physx-sigma-www-sigmaco-org

PhysX

71 / 100

PhysX é um middleware proprietário de engenharia de simulação computadorizada de física newtoniana e detecção de (e resposta à) colisão agora sendo desenvolvido pela NVIDIA como parte do kit NVIDIA GameWorks.

A ampla implementação do PhysX, além da razão comum a qual seria isentar o desenvolvedor de criar seu próprio engenho de física, é um mérito ao seu pioneirismo em tecnologia de aceleração de cálculos físicos por GPU, principalmente através da tecnologia CUDA, que está presente exclusivamente nas VGAs da NVIDIA.

Atualmente PhysX √© distribu√≠do em c√≥digo aberto para qualquer um, sob a cl√°usula 3 da licen√ßa BSD, para a maioria das plataformas. O nome ‚ÄúPhysX‚ÄĚ foi empregado pela NVIDIA ap√≥s aquisi√ß√£o do Novodex, nome anterior atribu√≠do pela AGEIA, sua propriet√°ria anterior. Ainda antes de se chamar Novodex, PhysX era denominado originalmente Meqon, antes da aquisi√ß√£o deste √ļltimo pela AGEIA.

Tecnologia

PhysX √© um middleware para representa√ß√£o matem√°tica de mundos tridimensionais feitos de entidades discretas nomeadas atores, as quais podem ser compostas de m√ļltiplas formas, podendo-as ser simples ou complexas.

Com PhysX, o desenvolvedor pode criar e destruir tais entidades, e trilhar suas intera√ß√Ķes expl√≠citas ou aproximadas. Entidades podem ser est√°ticas, podem ser movidas ao redor duma posi√ß√£o pelo agente simulador, ou podem ser movidas pelo PhysX acordando √†s leis da mec√Ęnica cl√°ssica.

A capacidade de simula√ß√£o din√Ęmica de PhysX inclui suporte a colis√£o, juntas e atua√ß√£o usando coordenadas m√°ximas e/ou reduzidas. Mais al√©m, o mundo pode ser indagado pelo usu√°rio usando um n√ļmero de diferentes ferramentas abrangendo desde simples proje√ß√Ķes de raios a testes de varredura e sobreposi√ß√£o.

PhysX prov√©m de extens√Ķes para funcionalidade de prop√≥sito especial, como simula√ß√£o de condu√ß√£o veicular, por exemplo. PhysX √© designado para ser robusto, de alto desempenho, escal√°vel, port√°vel, bem como f√°cil de integrar e usar. Estas capacidades tornam PhysX adequ√°vel como uma tecnologia de funda√ß√£o para engenhos de game e outros sistemas de simula√ß√£o em tempo real.

√Č importante lembrar que PhysX n√£o executa qualquer c√≥digo nas GPUs. Assim sendo, PhysX pode ser configurado para tomar vantagem da tecnologia CUDA dos GPUs da NVIDIA ‚ÄĒ filha-da-putagem, deveria ser o nome ‚ÄĒ, a qual prov√©m benef√≠cio de desempenho proporcional √† complexidade aritm√©tica duma cena.

Extens√Ķes de acelera√ß√£o por GPU s√£o providas como uma DLL bin√°ria opcional. No entanto, mesmo sem acelera√ß√£o por GPU, PhysX √© totalmente adequado e acelerado por instru√ß√Ķes SIMD para tomar vantagem m√°xima das modernas CPUs multinucleares. Nem sempre foi assim, criminosamente gra√ßas a NVIDIA, ent√£o cabe pondera√ß√Ķes.

Introspecção

Em resumo, podemos destacar os seguintes fatores:

  • C√≥digo aberto;
  • Simula√ß√£o multithreaded;
  • Gest√£o de uso de mem√≥ria;
  • Suporte para diferentes unidades e escalas de medi√ß√£o;
  • M√ļltiplos algor√≠timos de colis√£o de fase ampla;
  • Detec√ß√£o de formas primitivas, de malhas trianguladas e de malhas convexas;
  • Instanciamento e escala√ß√£o de malha;
  • Detec√ß√£o discreta e cont√≠nua de colis√£o; e
  • Sistema avan√ßado de solicita√ß√£o de cena;

Mídia

PhysX com extens√Ķes para simula√ß√£o de l√≠quidos e t√™xteis.

Related Articles

Bullet Physics

84 / 100 Bullet Physics, ou simplesmente Bullet, √© um middleware de engenharia de simula√ß√£o computadorizada de f√≠sica newtoniana, detec√ß√£o de (e resposta √†) colis√£o, e…

Euphoria

78 / 100 Euphoria √© uma pe√ßa de engenharia de gameware, implementado como middleware, para simula√ß√£o de mo√ß√£o biomec√Ęnica, isto √© anima√ß√£o (que √© cinem√°tica),…

Newton Dynamics

81 / 100 Newton Dynamics, ou simplesmente¬†Newton, √© um middleware de engenharia de gameware para simula√ß√£o realista de f√≠sica newtoniana. Newton est√° dispon√≠vel para m√ļltiplas…