A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

4/12/2017 2:27 AM 1.

Apresentações semelhantes


Apresentação em tema: "4/12/2017 2:27 AM 1."— Transcrição da apresentação:

1 4/12/2017 2:27 AM 1

2 Física e Inteligência Artificial para jogos utilizando XNA
4/12/2017 2:27 AM Física e Inteligência Artificial para jogos utilizando XNA Nome Roger Tang Empresa GLU Mobile

3 Agenda Física Inteligência Artificial Primeira lei de Newton
Modelando Velocidade, Atrito e Aceleração Impulso e Quantidade de Movimento Colisão e Conservação de energia Exemplo Engines de Física Inteligência Artificial Chase – Perseguição Evade – Fuga Exemplos

4 Física

5 Conceito de amostragem
É necessário armazenar o tempo transcorrido entre duas amostragens para efetuar uma simulação física. A amostragem temporal do jogo (Frames por segundo) não é contínua. A variação temporal entre duas interações de “Update” não pode ser considerada 1 e deve ser calculada a cada interação O XNA possui a classe auxiliar GameTime que permite calcular o tempo transcorrido entre duas interações

6 Primeira Lei de Newton Lei da Inércia Modelo
Na ausência de forças, um corpo em repouso continua em repouso, e um corpo em movimento, continua em movimento retilíneo uniforme (MRU). Modelo Em uma simulação onde existe uma esfera rolando sobre uma superfície a força que faz com que o corpo desacelere e perca velocidade é a força de atrito. Esta força é contrária ao vetor velocidade. velocidade atrito

7 4/12/2017 2:27 AM Demonstração

8 Modelando Velocidade em XNA
A velocidade é a derivada do espaço no tempo Codificando em XNA

9 Modelando Atrito em XNA
O atrito é força contrária ao movimento velocidade atrito

10 Modelando Aceleração em XNA
A aceleração é a derivada da velocidade no tempo Codificando em XNA

11 Impulso e Quantidade de Movimento
Para o caso do exemplo anterior, como a aceleração é constante, a velocidade cresce exponencialmente a cada ciclo de “Update”. Logo a velocidade tende ao infinito. Como queremos apenas alterar a velocidade em um curto espaço de tempo, vamos aplicar um Impulso No nosso modelo vamos aplicar o Impulso no intervalo de tempo de apenas um ciclo de “Update”. Desta forma assim que processarmos a nova velocidade vamos zerar o valor do impulso. Para o nosso exemplo, o Impulso continuará sendo aplicado enquanto o botão do “gamepad” estiver sendo pressionado

12 Modelando Impulso em XNA
O Impulso é aplicado em apenas em ciclo de update

13 Colisão e Conservação de Energia
Conservação da Energia Cinética. A soma da energia antes da colisão é igual a Energia depois da colisão Conservação do Momento Coeficiente de Restituição. É a medida de quanto uma colisão é Elástica ou Inelástica

14 Resolvendo as velocidades finais
Desta forma as novas velocidades depois da colisão são dadas por:

15 Detectando Colisão Cria-se uma esfera envolvendo a malha e verifica se uma esfera intercepta a outra

16 Codificando novas velocidades

17 4/12/2017 2:27 AM Demonstração

18 Engines de Física – Open Source
Open Source Engines Box2D Physics Engine - Engine 2D Bullet – Multarefa, colisão 3D e Dynamic Rigid Body ODE (Open Dynamics Engine) - Dynamic Rigid Body OPAL (Open Physics Abstraction Layer) PAL (Physics Abstraction Layer ) Tokamak Game Physics Farseer Physics Engine (engine 2D para Microsoft XNA e Silverlight)

19 Engines de Física – Profissinais
PhysX – Nvidia – build-in editor, graficos Direct X e som, vertex based Phyz Torque X – Garage Games Newton Game Dynamics Phun 2D Physics Sandbox Havok AgX Multiphysics (software) Working Model

20 Inteligência Artificial

21 4/12/2017 2:27 AM Chase - Perseguição O conceito de perseguição consiste em direcionar o agente para o alvo e iniciar a perseguição Vector3 direction = A.position – B.Position;

22 Lógica para definir lado da rotação

23 Implementando Perseguição

24 Exemplo de Busca e Perseguição

25 Evade - Fuga O conceito de fuga consiste em direcionar o agente para a posição oposta ao alvo Vector3 posicaoFuga = 2 * A.posicao - B.posicao;

26 Exemplo de Busca e Perseguição

27 Estados da IA Vagando Capturando Fugindo Capturado

28 Outras técnicas de IA Sterring Behaviours Redes Neurais Logica Fuzzy
Chase and Evade Wander ... Redes Neurais Logica Fuzzy Pendencias Alterar a IA da nave de perseguicao Esplicar o conceito de tomada de decisão para tiro do exemplo do asteroide Explicar a IA do exemplo de perseguição

29 http://www.gamefestbrasil.net/ 4/12/2017 2:27 AM
© 2008 Microsoft Corporation. All rights reserved. This presentation is for informational purposes only. Microsoft makes no warranties, express or implied, in this summary.


Carregar ppt "4/12/2017 2:27 AM 1."

Apresentações semelhantes


Anúncios Google