PhysX

PhysX é um middleware proprietário de engenharia de simulação computadorizada de física newtoniana e detecção de 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 presentes nas VGAs da NVIDIA.

PhysX agora é distribuído em código aberto para qualquer um, sob a cláusula 3 da licença BSD, para a maioria das plataformas.

Tecnologia

PhysX é um middleware para representação de mundos tridimensionais feitos de entidades discretas nomeadas atores, as quais podem ser compostas de múltiplas formas.

PhysX deixa o usuário criar e destruir tais atores, e trilhar suas interações explícitas ou aproximadas.

Atores podem ser estáticos, ser movidos acerca pelo usuário ou ser movidos 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 por padrão. 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 multithreaded e acelerado por instruções SIMD para tomar vantagem máxima das modernas CPUs multinucleares.

Destaques

  • 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;

Imagens

Related Articles

OpenGL

OpenGL, contração de Open Graphics Library, é todo um universo acerca do mundo da computação gráfica. Pois é, não é a ideia rasa que você…

Vulkan

Vulkan, incialmente apresentada como OpenGL Next (enquanto vaporware), é uma API de computação e de realização de gráficos 2D e 3D, multiplataforma, de baixa sobrecarga,…

Responses

Skip to toolbar