O que é nVidia PhysX?

physx-logo

Depois de conversar com algumas pessoas sobre o PhysX, decidi fazer um post falando um pouco sobre a tecnologia PhysX da nVidia a fim de esclarecer algumas dúvidas sobre o assunto.

cloth-physxFalando de maneira sucinta, o PhysX é um motor de física de tempo real. Isto quer dizer que com o SDK do PhysX é possível desenvolver aplicações capazes de realizar cálculos físicos complexos em tempo real (mais de 30 fps). Com isso, jogos podem processar física complexa de maneira muito rápida, o que permite um maior realismo nas cenas. Uma das mais impressionantes características do PhysX na minha opinião é sem dúvida o suporte a tecidos interativos. Um jogo que ficou famoso por usar o PhysX é o Mirror’s Edge (foto ao lado). Na foto é possível ver uma cena dentro do jogo onde você está correndo por um andaime e um helicóptero começa a atirar, quando ele acerta o tecido ele se rasga onde foi atingido. A espera para o lançamento do jogo para PC valeu a pena. Sem o suporte ao PhysX, o tecido do andaime simplesmente não estaria ali.

Outro jogo interessante que tem suporte ao PhysX (pode-se dizer que o jogo não funciona sem o PhysX) é o Trine. Neste jogo a física é muito bem usada no momento da resolução de quebra-cabeças. O Mago pode criar caixas que são usadas para travar mecanismos. Quando uma caixa é criada em cima de uma engrenagem, dependendo do jeito que ela caísse, a engrenagem parava e você pode prosseguir.

Origem do PhysX

O PhysX foi originalmente desenvolvido pela Ageia com o nome de NovodeX SDK. A Ageia foi uma companhia que entrou no mercado de gráficos 3D com ideias fantásticas sobre trazer a física para os jogos de computadores. Os engenheiros da Ageia sabiam que a física permitiria uma experiência visual muito mais real. A lider no mercado de gráficos até então, nVidia, virou seus olhos para o que a Ageia estava fazendo e decidiu comprar a empresa pela bagatela de 30 milhões de dólares (física também dá dinheiro). A incorporação dos PPU (physics processing units – unidades de processamento de física) nas placas gráficas da série GeForce foi o grande responsável pela disseminação dessa tecnologia. Antes de ser comprada a Ageia fabricava suas próprias PPU’s (foto abaixo). Note que a PPU não possuia nenhuma saída. Ela funcionava como um processador auxiliar, que livraria a CPU de boa parte dos cálculos pesados deixando isso para um processador dedicado.

Após ter sido comprada, a API da Ageia começou a se transformar no que hoje é conhecido como CUDA. Todas as placas gráficas da nVidia a partir da série 8 possuem suporte nativo ao PhysX. Hoje em dia, os processadores CUDA podem ser usados para uso geral, o que tem provocado muitas surpresas nas áreas de processamento paralelo, mas sua arquitetura privilegia cálculos de física. O que começou como um processador dedicado a física, hoje pode ser usado levar aplicações ao seu máximo desempenho. A PPU da foto acima hoje é um processador altamente paralelo e com tremendo poder computacional (foto abaixo). Estamos na era dos supercomputadores pessoais.

Para mais informações sobre CUDA leia o post NVIDIA CUDA – Unidades Gráficas de Propósito Geral.

[Update]

Para mais informações sobre PhysX além de outros pacotes de física, veja NVIDIA PhysX, Bullet e Havok – Física para todos os gostos

Fonte: shinvision



17 comentários

  1. Pingback: Um pouco sobre a tecnologia SLI da nVidia « Capim Lokura

  2. Pingback: NVIDIA GF100 – Primeira GPU Baseada na Arquitetura FERMI « Capim Lokura – Lokuracast

  3. Pingback: OptiX – A Engine de Ray Tracer da NVIDIA « Capim Lokura

  4. Cara eu tenho uma dúvida sobre o NVIDIA PhysX, eu tenho uma placa de vídeo Radeon HD 4350, e faz um tempinho já que, do nada, apareceu esse NVIDIA PhysX instalado no meu PC, tipo ele funciona mesmo sem ter uma placa própria da NVidia?

    Vlw!!

  5. O PhysX é uma engine física que é implementada em hardware pelas placas da nvidia. Mas no seu caso o que ocorre é as instruções de física que o programa (jogo) que esteja rodando são executadas pela CPU mesmo. Até onde eu sei a ATI não implementa o PhysX diretamente nas suas placas (o que não faria sentido).

    Eu tive um problema desse quando eu instalei o Trine no meu notebook. Ele tinha uma placa ATI e não funcionava pq faltava o PhysX. Ai vc instala o software e o jogo funciona, mas a CPU fica sobrecarregada.

    Mas funciona sim.

  6. Parabéns ,gostei da explicação …comprei uma GTX 580 e uma NVIDIA Tesla C1060 substituir minha placa de vídeo antiga 4870×2 com 2GB…acho que fiz a coisa certa…meus reder agradecem…heheheh .Abrcs

  7. Muito obrigado por responder querido,fiquei feliz.

    Trabalho com TV e Cinema a 25 anos.sou vitima ao mesmo tempo que sou cúmplice da tecnologia.
    A 3 anos projetei e montei um super PC nos USA, para edição e computação gráfica 3D, quad i7 2.8, placa de vídeo de 2GB-DDR5 PCI Express 2.0, 6 Terabyte de HD em RAID 5 e gravador BLU-RAY com monitor de 30”Full HDTV. Com 12GB de memoria RAM Triple Channel DDR3 1800MHz. Asus Rampage II Extreme Motherboard – Intel X58, LGA 1366, ATX, Audio, PCI Express 2.0, CrossFire Ready, SLI Ready, Dual Gigabit LAN, S/PDIF, Firewire, USB 2.0, Serial ATA.
    Comprei estas 2 placas por que achei de baixo custo as 2 por 2.000,00 dolar quis dar uns anos a mais de vida minha maquina antiga.

  8. Boa tarde McLeary, a minha dúvida á a seguinte, eu tenho uma Nvidia geforce gtx 560 ti, somente ela. Teria como eu ativar o PhysX somente com uma placa de video? E se o desempenho ficaria bom? Obrigado!!!!

  9. Olá Junior, a resposta para a sua pergunta é sim, você pode ativar o PhysX somente com uma placa. Se não me engano, este é o comportamento padrão de quando você instala o driver. O desempenho vai depender da aplicação que você estiver executando. O jogo Batman Arkhan City, por exemplo, quando habilitado para o máximo de gráficos, recomanda uma placa dedicada ao PhysX. Para verificar se o seu PhysX está habilitado vá em Painel de Controle/Painel de Controle da NVIDIA e, no lado esquerdo, vá em Definir a configuração SLI e PhysX. Nessa tela você terá informações sobre o PhysX.

  10. Poxa valws mesmo McLeary, te agradeço de montão mesmo. Só não consegui visualizar se o meu PhysX está funcionando, pois segui as suas instruções, e somente aparece no meu painel aqui, só da pra escolher “Definir a configuração PhysX”, e selecionei a minha placa de video. Tem alguma ideia do que pode vir a ser McLeary? Obrigado novamente meu caro, continua assim, seu site esta otimo!!!!

Escreve ai malaco!

Seu e-mail não será publicado