sábado, 5 de janeiro de 2008

Especial - Euphoria

O que é? Como funciona, e como é a implementação da Dynamic Motion Synthesis (DMS) da empresa NaturalMotion, mais conhecida entre os jogadores como euphoria.
Engine de Simulação Física? NÃO!
No entanto, antes de começar, temos que esclarecer um ponto importante. Ao contrário do que muitos acham a euphoria não é uma engine para simular física. O que a euphoria faz é usar a engine de simulação física já existente ou implementada nos jogos. Por exemplo, a engine física usada no GTA IV faz parte da Rockstar Advanced Game Engine, ou simplesmente RAGE. Já nos jogo Star Wars: The Force Unleashed, onde a euphoria também estará presente, a engine física sera a velha conhecida HAVOK. Bem, se a euphoria não é uma engine de simulação física, o que ela é então? É uma tecnologia que sintetiza animações interativas nos consoles de nova geração e PCs. Ela foi idealizada para substituir as animações pré-determinadas de uma forma seletiva e suave, sendo assim capaz de criar momentos únicos durante o jogo.
Next Generation - Chegou a vez das Simulações
O coração da euphoria são as simulações de comportamentos dinamicamente sintetizados, ou simulações DMS, onde os controles de inteligência artificial se adaptam e determinam as reações dos personagens em resposta às informações sensoriais recebidas. Diferente das simulações baseadas em animações pré-determinadas (como as animações controladas pela tecnologia ragdoll), as simulações DMS são completamente procedurais e capazes de criar novas experiências para o jogador. Além disso, elas proporcionam um nível de qualidade nas animações nunca antes alcançado.
A euphoria é composta por duas ferramentas, uma de autoração e outra de execução em tempo real. As ações (como as simulações de comportamentos dinamicamente sintetizados) são criadas no euphoria:studio e executadas em tempo real pelo euphoria:core.O euphoria:core é uma série de códigos leves executados em tempo real que fornece simulações DMS para as engines dos jogos de nova geração. Ele fornece uma API compacta, integração suave e fácil, compatibilidade com as principais engines físicas e tem como alvo as plataformas PS3, Xbox 360 e PC.
euphoria:core
Os componentes do euphoria:core são o Kernel, onde estão funções básicas como os módulos, as seqüências de simulação e a comunicação com a engine do jogo; e os Módulos de controle de inteligência artificial (AI Controller Modules), onde fica o código de execução das simulações de comportamentos dinamicamente sintetizadas.
euphoria:studio
Já o euphoria:studio é um poderoso aplicativo de autoração para a euphoria. As principais características do euphoria:studio são a possibilidade de se criar simulações DMS em ambientes virtuais para que sejam testados antes da implementação no jogo. Além disso, o euphoria:studio é totalmente compatível com a linguagem de programação baseada em scripts Lua. O euphoria:studio conta também com total suporte a diversos tipos de plug-ins.
Integração
Agora que você já foi apresentado à euphoria, está na hora de saber como ela é integrada aos jogos. O euphoria:core foi desenvolvido para ser integrado às engines dos jogos com o mínimo de interferência. Importante ressaltar que a euphoria não substitui qualquer sistema de animação pré-existente, situando-se paralelamente a esses sistemas.
O euphoria:core é usado pelo jogo sempre que uma animação interativa for requisitada em uma cena (como um personagem socando outro). O processo pode ser iniciado dinamicamente e rodar em conjunto com a animação em questão, para que a transição entre as duas seja suave. O euphoria:core irá então comandar o processo de animação em tempo real, devolvendo o controle para a engine do jogo quando obrigado ou requisitado.
DMS - Liberdade de Movimentos
Ok, agora é hora de falar um pouco mais sobre o Dynamic Motion Synthesis, ou DMS. Diferente das animações convencionais, como a motion capture (captura de movimentos), o DMS usa o poder de processamento da CPU para criar os movimentos dos personagens em tempo real. Isso só é possível graças a uma simulação completa dos personagens, principalmente seu sistema nervoso central e corpo físico.
A principal vantagem do DMS sobre os sistemas convencionais é a redução de tempo e custo na produção de animações convencionais. Além disso, o DMS produz personagens 3D completamente interativos.
Com animações criadas com o poder de processamento das CPU’s, os personagens 3D são animados de acordo com instruções e scripts do tipo: em determinada situação, abaixe-se, saque a arma e atire... se alguém sacar uma arma saia correndo e gritando... em um tiroteio, procure a cobertura mais próxima e responda fogo.

DMS x Motion Capture
Usando o DMS os programadores e animadores terão um controle ainda maior sobre os movimentos e reações dos personagens. Técnicas como a “motion capture” fazem com que os movimentos dos personagens sejam sempre pré-determinados. Com a DMS os animadores poderão definir posições para os personagens. As animações de transição entre uma posição e outra irão variar de acordo com os acontecimentos no ambiente. Por exemplo, Niko tem uma determinada posição quando está em pé desarmado (1), outra para quando está em pé e armado(2), e outra para quando está agachado e preparado para atirar (3). Em uma situação de jogo, Niko estaria andando sem a arma. Ao avistar 2 inimigos, o jogador pressiona o botão para que Niko saque sua arma e salta para cair agachado e abrigado atrás de um contêiner de lixo. O DMS entra em ação e Niko sai da posição 1 para a posição 2, em seguida salta para cair na posição 3. As ações que acontecem entre uma posição e outra são criadas pela CPU, dando ao jogador uma sensação de realidade e interatividade impossível de ser alcançada com técnicas como a motion capture.
O futuro agora...
Com a atual geração de CPU’s (PS3, Xbox 360 e PC’s) os personagens serão dinamicamente simulados em tempo real, ou até mais rápido. Isso indica que animações pré-determinadas podem ser sintetizadas num piscar de olhos. Na prática, o DMS faz uma simulação física de um corpo. As rotinas de inteligência artificial usariam apenas uma pequena fração do poder de processamento das CPU’s atuais.
Vídeos
Para ilustrar melhor peguei alguns links de vídos no youtube. Através destes links você pode encontrar mais vídeos com demonstrações da engine euphoria, principalmente nos trailers dos jogos Star Wars: The Force Unleashed e o novo jogo do Indiana Jones.
Link 1 - Tec demo da euphoria, produzido pela NaturalMotion
Link 2 - NaturalMotion demonstra o euphoria usando o programa Endorphin.
Link 3 - NaturalMotion Backbreaker Football - Futebol americano usando a engine euphoria.
Este post foi criado a partir da documentação oficial da engine euphoria presente no site oficial da empresa NaturalMotion Ltd. Na maior parte do post eu simplesmente traduzi e adaptei as informações fornecidas pela própria NaturalMotion.

quinta-feira, 3 de janeiro de 2008

GTA IV - Mapa Revelado?

Parte do mapa do GTA IV pode ter sido revelado acidentalmente (ou não... vai saber!) pela Rockstar no terceiro trailer.

Durante a rápida cena em que 2 barcos patrulha aparecem, algo que parece ser o mapa de Liberty City aparece no painel de um dos barcos.

Um usuário do GTAForums que usa o nickname BlueSpot notou o que nenhum outro fã do jogo tinha notado até agora. Muitas análises foram feitas em cima do terceiro trailer, mas esse pequeno detalhe passou realmente desapercebido.

Uma das coisas que fez com que quase todo mundo acreditasse que esse pode ser mesmo parte do mapa do jogo foi a semelhança das ilhas fictícias e suas contrapartes reais. Veja a imagem abaixo, capturada e editada pelo próprio BlueSpot, e tire suas próprias conclusões.

Ficou em dúvida? Darrel, outro usuário do GTAForums, adcionou os nomes dos distritos, revelados pela Rockstar no ano passado. O mapa com os nomes está logo abaixo.

Fontes: gta4.net / gtaforums.com

EDIT -

Ok, agora vamos comparar os mapas antigos com este. Primeiro a Liberty City do GTA original.

Agora, a Liberty City do GTA III e Liberty City Stories:

E por último, mas não menos importante, Soylomass, também usuário do GTAForums fez um mapa a partir do que foi descoberto, complementando algumas áreas e adicionando os nomes dos distritos.

GTA IV: Trailers


Trailer 4 "Good lord, what are you doing?" AKA "Everyone's a rat"

Trailer 3 "Move up, ladies"

Trailer 2 "Looking for that special someone"

Trailer 1 "Things will be different"