Header Ad Widget

DayZ recebe Relatório Semanal mostrando o foco no sistema 'zombie pathfinding'.



Este Devblog será focado em descrever o progresso com um dos nossos maiores problemas: Zombie Pathfinding.

Prioridades do Desenvolvimento.

Nosso foco principal tem sido na criação da arquitetura, tanto na equipe e no jogo, a fim de oferecer o melhor no futuro.Isto envolveu-nos a aumentar drasticamente o tamanho da equipe que trabalha no jogo, com isso teve um impacto de curto prazo grave em nosso progresso como nossa equipe existente teve que dedicar tempo e recursos para treinamento e planejamento. A nova pathfinding zumbi é um bom exemplo desta abordagem que está começando a produzir resultados.
Alguns exemplos de futuras grandes mudanças:

• Sistema de renderização totalmente recriado (permitindo atualizações potenciais para DX10 ou DX11).
• Multithreading/multicore para servidores e possivelmente para clientes.
• Completamente nova AI para animais, que espalha animais com comportamento mais realista.
• Refatoração completa do sistema de inventário. Apesar de não ser uma grande mudança para os usuários, possivelmente permite que alguns sistemas mais avançados possa ser implementado com um melhor desempenho e com menos bugs.

A Engine

Os Zombies têm provado ser um dos mais difíceis componentes do jogo a ser desenvolvido. Quando estávamos desenvolvendo o jogo, percebemos que no tempo que tínhamos, teríamos de trabalhar dentro dos parâmetros da AI com mais frequência.

Além de problemas de comportamento, também tivemos problemas com a pathfinding e com a colisão para a AI. Estávamos recebendo o motor para fazer as coisas que ele nunca foi projetado para fazer, especialmente em relação a interiores de edifícios. Tentamos refazer essas soluções para acomodar as nossas mudanças, mas, no final, decidimos que seria mais fácil desenvolver uma nova abordagem a partir do zero.

O Desafio

Há muitas soluções interessantes disponíveis para a pathfinding. Nosso problema não foi o único , mas a nossa situação era : O nosso mundo é muito grande, no entanto, exige a mesma precisão que um mundo pequeno.

A equipe dedicada a resolver isso decidiu usar malhas de navegação . O grave problema que apresentou , porém, foi como gerar essas malhas , com quase 2 milhões de objetos no mapa fazê-lo com a mão não seria uma opção. Assim, um método foi criado para dividir o mundo em ''grades''.

Os Resultados

Falei com Martin Slavkov, o programador por trás dessa solução , para me ajudar a delinear o resultado com algumas screenshots.


Um pequeno programa foi desenvolvido para ler o mundo, carregar todos os objetos e, em seguida, trabalhar o seu caminho através de rastreamento de bilhões de linhas para calcular a capacidade de se mover.Ter uma solução unificada para pathfinding torna a implementação muito mais fácil.
Imagem

O motor é então capaz de carregar os ''pedaços'' do cenário. Ele usa um pouco de memória (cerca de 600MB extra, no máximo), mas ele só carrega os pedaços necessários. No entanto, como estamos nos movendo para 64 bits no lado do servidor, o que reduz possíveis problemas com a memória.


Otimizações de desempenho podem ser muito significativas. Atualmente a equipe está trabalhando em paralelização a função AI pathfinding que possa operar em um núcleo separado. Com todas as novas funcionalidades que estamos desenvolvendo, desta forma, infelizmente, isso significa que ele pode levar mais tempo de desenvolver, mas os resultados para o desempenho pode ser enorme.

Anteriormente foram utilizados dois sistemas diferentes para navegar a AI. A primeira tratada de navegação em torno de objetos estáticos e dinâmicos, e um sistema interno que foi usado para interiores de edifícios.


Na imagem acima, você pode ver um caminho entre dois pontos vermelhos. Uma vez que o sistema está agora unido, isso significa que as soluções de pathfinding mais eficiente (e mais naturais) estão disponíveis para a IA.


Estou feliz em informar que iremos ter grandes novidades de conteúdos que em breve estará nos servidores experimentais. Nós temos uma implementação básica de animais protótipos que serão trocados pelo trabalho de nossos artistas do estúdio de Bratislava.


Pesca improvisadas foram criadas, os jogadores serão capazes de pegar peixes em lagoas. Criamos também alguns modelos de Filé que você poderá até mesmo cozinhar :D.


Nosso Artista de Personagens está ampliando ainda mais com a adição de um novo colete policial de inspiração a OMON. Também começamos a trabalhar em EMT, Bombeiro, e finalizando os uniformes Gorka.

Fogueiras e Caças!

A construção no experimental irá mostrar a estrutura básica de como isso vai funcionar.Você também poderá cortar madeira de árvores, e depois de um certo tempo, as árvores serão ''gastas'' e poderão cair naturalmente. O corte das árvores é feito segurando um machado em suas mãos, e usando o menu de ação do mouse.Mas todas essas funções serão para um futuro próximo.

Fogueiras pode ser ''refeitas'' com pedras, que são recuperados a partir do solo em torno de áreas rochosas ou também batendo em rochas com uma picareta.Fogueiras pode ser trabalhada, fazendo um "kit de fogueira" de itens, tais como trapos e gravetos.Essas funções irão abrir portas para outras funções, tais como horticultura.

Nós visitamos a nossa equipe em Bratislava, eles têm uma tartaruga.......ohhh isso me da uma grande ideia!


A próxima atualização

Nossas metas atuais coloca uma atualização uma vez por mês em uma versão estável.
Acima de tudo, é vital que as pessoas fique consciente que,diferentes tarefas exige diferentes quantidades de tempo!

Devblogs já não estão programadas semanalmente, e serão feitos o mais rápido possível.

A palavra final

Este é um momento muito emocionante para todos nós que chegamos a partir de dois meses de crescimento. Nós expandimos a equipe com um grande negócio, assumindo um risco enorme. Esse risco está valendo a pena, e estamos animado para ver o enorme impacto que as pathfinding e colisões de mudanças terá sobre a experiência no DayZ .

Fonte:DayZDev

Comentários

Notícia Anterior Próxima Notícia