Engine:pt

From NS2 community wiki

Jump to: navigation, search

NS2 vai utilizar um, ainda a ser nomeado, engine de jogo desenvolvido por Max.

Contents

Gráficos

O engine utiliza luz e sombra dinâmicos em tudo que existe no mapa. Uma demonstração em vídeo pode ser assistida no Videocast #5.

O engine utiliza Direct3D (post de Fórum por Max), DirectX 9 (post de Fórum por Max), e shader model 2.0 (entrevista Readyroom).

Motion Blur (borrão de movimento) está implementado na ferramenta cinemática e pode ser usada no jogo (post de Fórum por Max).

Câmeras podem ser acopladas à modelos (cite, explique o que isso significa).

Occlusion culling (refugo de oclusão) é assitido por hardware, feito em tempo real, utilizando uma implementação do algorítmo CHC++. Este método é adequado tanto para ambientes internos quanto externos, reduzindo a limitação de modos de jogo que possam ser criados (post de Blog, post de Fórum por Charlie).

Dynamic Infestation

Veja Dynamic Infestation.

Interface

A HUD utiliza o formato popular Flash. Nota: o engine não utilizará o Adobe Flash Player, mas algo como GameSWF ou um interpretador customizado (post de Fórum por Max).

Código de Jogabilidade

O código de jogabilidade está escrito em LUA.

Física

Código de Rede

Usa um código customizado que pega idéias empresatadas do Half-Life e Quake 3 (post de Fórum por Max).

Áudio

Utiliza a biblioteca de áudio FMOD (entrevista Readyroom), e o formato de áudio OGG (post de Fórum por Max).

Terá carregamento automático. Isso significa que quando você mudar o arquivo de som você poderá ouvir as mudanças imediatamente dentro do jogo. (post de Twitter)

História do Engine de jogo

A equipe inicialmente planejou utilizar o engine Source e a mudança para o engine próprio for anunciada em Julho de 2008 (Podcast #26). Três meses antes do anúncio o estudo de viabilidade da mudança de engines havia começado, com Max adicionando movimento de jogador à um engine "Maxor" já existente, que ele vinha desenvolvendo há alguns anos para outros propósitos. No momento do anúncio o engine próprio já estava além do estágio em que estavam com o engine Source, e especificamente os elementos a seguir já haviam sido implementados: gráficos, código de jogabilidade, física, rede, movimento dos jogadores, ragdolls, e animação de modelos.

As razões para a mudança foram:

  • Limitações do engine Source.
  • A grande quantidade de trabalho necessária para adequar o engine Source às necessidades do NS2.
  • O maior tempo de desenvolvimento necessário quando se trabalha com o engine Source. Por exemplo, luz dinâmica significa nenhuma pré-computação enquanto mapas são desenvolvidos, permitindo que o desenvolvedor veja mudanças instantaneamente em vez de ser obrigado a esperar pela compilação.
  • Falta de familiaridade com o engine Source.
  • Considerações de negócios da toolchain.
Personal tools
community