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

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

Davi Barbosa Leonardo Batista Marcelo Almeida Wagner Barros [dbb, lbs3, maa, Prof.ª Judith Kelner Alunos:

Apresentações semelhantes


Apresentação em tema: "Davi Barbosa Leonardo Batista Marcelo Almeida Wagner Barros [dbb, lbs3, maa, Prof.ª Judith Kelner Alunos:"— Transcrição da apresentação:

1 Davi Barbosa Leonardo Batista Marcelo Almeida Wagner Barros [dbb, lbs3, maa, wbas]@cin.ufpe.br Prof.ª Judith Kelner Alunos:

2  Introdução  Características ◦ Hardware ◦ Software  Exemplos  Referências

3  O que é PhysX ? PhysX é uma unidade de processamento física, primeiramente projetada pela.

4  Proprietário

5  Leis de Newton o Primeira Lei de Newton (inércia); o Segunda Lei de Newton (relação força-mov.); o Terceira Lei de Newton (ação e reação).

6  Leis de Newton o Primeira Lei de Newton (inércia)

7  Leis de Newton o Segunda Lei de Newton (relação força-mov.)

8  Leis de Newton o Terceira Lei de Newton (ação e reação)

9  SDK disponível e livre de cobrança.

10  AGEIA PhysX  Primeiro processador dedicado apenas para à aceleração de hardware para jogos de PC  Placa de extensão de acelerador  Produção de movimentos e iteração dinâmicos

11  Exemplo de um processador produzido pela AGEIA  PhysX 100M

12  A importância de Física para os Jogos  Efeitos de Animação pré-fabricados  Evolução dos Jogos  Melhor Interação e Reação com o Ambiente Hardware

13  Como os Jogos ficam otimizados com o PhysX ?  Criação de recursos físicos  Criação de recursos para aceleração de hardware  Estabilidade  Funcionalidade  Desempenho

14 PhysXSDK  A NVIDIA oferece aos desenvolvedores de jogos o PhysX SDK (Software Development Kit)  É aceito por quase todas as ferramentas de desenvolvimento  Oferece suporte direto em várias plataformas  Microsoft  Xbox 360  PlayStation 3

15  Processador  GPUs ( Graphics Processing Unit ) da Nvidia  Basicamente, é um processador produzido especificamente para realizar cálculos e tarefas relacionadas ao Processamento de Gráficos em tempo real.

16  Por que a GPU é boa para processamento da física ?  O mecanismo PhysX multiencadeado foi projetado especificamente para aceleração de hardware em ambientes de intensa computação paralela.

17  Fabricantes de GPU  INTEL  NVIDIA  ATI

18  Exemplo de um processador, desenvolvido pela NVIDIA.  GEFORCE 6600 GT

19  Contribuição do PhysX para GPU ?  As GPUs da NVIDIA baseadas na CUDA, estão sendo habilitadas com a tecnologia NVIDIA PhysX.  Combinação entre elementos gráficos e físicos  Maior aproveitamento para desenvolvedores  Melhor Interação entre o usuário e o ambiente virtual

20  O que é CUDA ?  É uma arquitetura de computação paralela projetada para tirar melhor aproveitamento dos mecanismos de computação paralela das unidades de processamento gráfico (GPUs) NVIDIA

21  Algoritmo de colisão, posicionamento espacial, etc.  PhysX SDK implementado em c++  Organizado como uma hierarquia de classes  Cada classe contendo alguma funcionalidade acessível pelo usuário implementa uma interface  Nomes de interface sempre começam com “Nx”

22  Classe usada para instanciar objetos e setar parâmetros globais que afetam todas as cenas  Método NxCreatePhysicsSDK() é usado para obter uma instância desta classe  Exemplo: NxPhysicsSDK *myworld = NxCreatePhysicsSDK(NX_PHYSICS_SDK_VERSI ON);

23  Conjunto de corpos, restrições e efeitos  Simula comportamento de objetos de acordo com sua interação, com as interações só ocorrendo entre objetos de uma mesma cena  Pode manipular elementos de ambiente, como por exemplo a gravidade  Exemplo: NxSceneDesc sceneDesc;  sceneDesc.gravity = NxVec3(0.0f, -9.81f, 0.0f); //Define a gravidade da cena  gScene = gPhysicsSDK- >createScene(sceneDesc);

24  Principal objeto de simulação, sendo criado por uma cena e pertencente à mesma  Pode ser estático ou dinâmico  No caso de ator estático, definem-se como elementos de paisagens, não possuem atributos físicos e são utilizados habitualmente na detecção de colisões  Atores dinâmicos são corpos e possuem um conjunto de propriedades físicas  Exemplo abaixo cria um ator estático NxPlaneShapeDesc planeDesc; NxActorDesc actorDesc; actorDesc.shapes.pushBack(&planeDesc); NxActor *staticActor = gScene->createActor(actorDesc);

25  Modelam o objeto  Utilizados para o controle e detecção de colisões  Podem assumir vários tipos, tais como caixa, esfera, cápsula, cubo, entre outros  No exemplo abaixo, modelamos um cubo de 1m de aresta NxBoxShapeDesc boxDesc; boxDesc.dimensions.set(0.5f,0.5f,0.5f); NxBoxShape *boxShape=actor- >createShape(boxDesc)->isBox();

26  São conexões entre corpos rígidos, ou seja, entre atores  Necessita sempre de pelo menos 2 atores  Possuem pontos em comum que tanto podem ser de rotação como de translação  Classificados em diversas categorias, tais como, esférica, prismática, ponto no plano, ponto na reta, etc  Define como se dá a movimentação dos atores sobre o ponto de junta  Exemplo  NxVec3 globalAnchor = NxVec3(0,5,0);  NxVec3 globalAxis = NxVec3(0,1,0);  NxSphericalJointDesc sphericalDesc;  sphericalDesc.actor[0] = a0;  sphericalDesc.actor[1] = a1;  sphericalDesc.setGlobalAnchor(globalAnchor);  sphericalDesc.setGlobalAxis(globalAxis);  sphericalDesc.flags |= NX_SJF_SWING_LIMIT_ENABLED;  sphericalDesc.swingLimit.value = 0.3*NxPi;  sphericalDesc.flags |= NX_SJF_TWIST_LIMIT_ENABLED;  sphericalDesc.twistLimit.low.value = -0.05*NxPi;  sphericalDesc.twistLimit.high.value = 0.05*NxPi;  NxSphericalJoint *j = (NxSphericalJoint*)gScene->createJoint(sphericalDesc);

27  Descreve as propriedades da superfície  Pode ser anisotrópica, ou seja, propriedade física pode variar com a direção  Exemplo abaixo cria um material anisotrópico, definindo também o seu atrito anisotrópico: NxMaterialDesc material; material.restitution = 0.0f; material.staticFriction = 0.1f; material.dynamicFriction = 0.1f; material.dynamicFrictionV = 0.8f; material.staticFrictionV = 1.0f; material.dirOfAnisotropy.set(0,0,1); material.flags = NX_MF_ANISOTROPIC; NxMaterial *anisoMaterial = gScene->createMaterial(material);

28  lista de jogos : http://nzone.com/object/nzone_physxgames_home.html http://nzone.com/object/nzone_physxgames_home.html

29  http://pt.wikipedia.org/wiki/PhysX http://pt.wikipedia.org/wiki/PhysX  http://www.nvidia.com/object/nvidia_physx.html http://www.nvidia.com/object/nvidia_physx.html  http://www.infomaniaco.com.br/games/physx-o-que-e- e-o-que-ele-muda-nos-jogos/ http://www.infomaniaco.com.br/games/physx-o-que-e- e-o-que-ele-muda-nos-jogos/  http://www.nvmania.com.br/forum/ultimas-noticias/513- nvidia-compra-ageia-e-seu-physx.html http://www.nvmania.com.br/forum/ultimas-noticias/513- nvidia-compra-ageia-e-seu-physx.html  http://www.forumpcs.com.br/noticia.php?b=217951 http://www.forumpcs.com.br/noticia.php?b=217951  http://www.nvidia.com.br/object/physx_accelerator_br.ht ml http://www.nvidia.com.br/object/physx_accelerator_br.ht ml


Carregar ppt "Davi Barbosa Leonardo Batista Marcelo Almeida Wagner Barros [dbb, lbs3, maa, Prof.ª Judith Kelner Alunos:"

Apresentações semelhantes


Anúncios Google