Repolode
pmndrs

pmndrs/react-three-rapier

Bindings React para o motor de física WASM Rapier, integrando corpos rígidos, colliders e joints a cenas do react-three-fiber.

Estrelas
1,475
Forks
89
Issues abertas
55
Último commit
há 8 dias

O que é?

react-three/rapier encapsula o motor de física WASM Rapier em componentes React, permitindo declarar objetos físicos junto com meshes em uma cena do react-three-fiber. Um componente Physics cria a simulação, componentes RigidBody vinculam meshes a ela, e componentes de collider definem formas manualmente ou as geram automaticamente a partir da geometria dos meshes.

Além dos corpos básicos, a biblioteca oferece hooks para joints fixos, esféricos, revolutos, prismáticos, de corda e de mola, além de corpos rígidos instanciados para grandes quantidades de meshes. Também inclui eventos de colisão e força de contato, sensores, filtragem de grupos de colisão, passos de tempo configuráveis, um renderizador de depuração, loops de atualização independentes para renderização sob demanda e snapshots do mundo.

Na versão v2, o pacote é voltado ao react-three-fiber v9 e ao React 19; projetos que usam React 18 devem optar pela v1 com fiber v8.

Recursos principais

  • 01Componentes declarativos RigidBody e de collider para cenas do react-three-fiber.
  • 02Geração automática de colliders a partir dos limites dos meshes, de esferas ou de geometrias convex hull e trimesh.
  • 03Seis tipos de joints disponíveis como hooks React, incluindo joints revolutos, prismáticos e de mola.
  • 04Corpos rígidos instanciados com colliders por instância e formas compostas.
  • 05Callbacks para eventos de colisão, sensores e força de contato, além de filtragem de grupos de colisão.
  • 06Visualização de depuração, passo de tempo configurável e serialização de snapshots do mundo.

Casos de uso

  • Adicionar objetos com física, como itens que caem ou bolas que quicam, a um jogo ou cena interativa do react-three-fiber.
  • Criar ragdolls, correntes, portas ou rodas com joints em uma aplicação React 3D.
  • Simular milhares de pequenos corpos rígidos usando meshes instanciados.
  • Detectar zonas ou gatilhos em uma cena 3D com colliders de sensor.

Início rápido

  1. 1

    Instale o pacote pelo npm

    npm install @react-three/rapier
  2. 2

    Importe Physics e RigidBody e envolva sua cena em Physics dentro de Suspense

Antes de usar

  • A versão 2 requer @react-three/fiber v9 e React v19; quem usa React v18 deve usar a versão 1 com fiber v8.

Tópicos

Perguntas frequentes

O que é react-three-rapier?
Bindings React para o motor de física WASM Rapier, integrando corpos rígidos, colliders e joints a cenas do react-three-fiber. react-three/rapier encapsula o motor de física WASM Rapier em componentes React, permitindo declarar objetos físicos junto com meshes em uma cena do react-three-fiber. Um componente Physics cria a simulação, componentes RigidBody vinculam meshes a ela, e componentes de collider definem formas manualmente ou as geram automaticamente a partir da geometria dos meshes.
react-three-rapier é gratuito? Qual é a licença?
react-three-rapier é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
react-three-rapier ainda é mantido?
Manutenção ativa. O último commit de react-three-rapier foi em 12 de out. de 2026.
Para que posso usar react-three-rapier?
Adicionar objetos com física, como itens que caem ou bolas que quicam, a um jogo ou cena interativa do react-three-fiber. Criar ragdolls, correntes, portas ou rodas com joints em uma aplicação React 3D. Simular milhares de pequenos corpos rígidos usando meshes instanciados. Detectar zonas ou gatilhos em uma cena 3D com colliders de sensor.
Como instalar react-three-rapier?
Instale o pacote pelo npm: npm install @react-three/rapier Importe Physics e RigidBody e envolva sua cena em Physics dentro de Suspense
Onde consigo react-three-rapier?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/pmndrs/react-three-rapier

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados