Uma engine de jogos orientada a dados, escrita em Rust e baseada em Entity Component System para jogos 2D e 3D.
avianphysics/avian
Uma engine de física 2D e 3D baseada em ECS, desenvolvida especificamente para a Bevy, a engine de jogos escrita em Rust.
- Estrelas
- 3,280
- Forks
- 302
- Issues abertas
- 212
- Último commit
- anteontem
O que é?
Avian é uma engine de física para a Bevy, escrita em Rust e disponibilizada em crates separadas para 2D (avian2d) e 3D (avian3d). Ela foi projetada para se integrar diretamente ao Entity Component System da Bevy, de modo que os objetos físicos sejam entidades e componentes comuns, em vez de pertencerem a um mundo de física separado que precisa ser mantido em sincronia.
A engine oferece corpos rígidos dinâmicos, cinemáticos e estáticos, com velocidades, forças, amortecimento, bloqueio de eixos, repouso e detecção contínua de colisões. A detecção de colisões usa a biblioteca Parry, e o projeto oferece eventos de colisão, camadas, hooks de colisão, juntas (fixas, de distância, prismáticas, revolutas e esféricas) e consultas espaciais, como raycasts e shapecasts. Também inclui interpolação de transformações para passos de tempo fixos e renderização de depuração.
Avian aceita precisão f32 e f64, com f32 como padrão. A documentação e diversos exemplos 2D e 3D estão disponíveis no docs.rs e no repositório.
Recursos principais
- 01Corpos rígidos dinâmicos, cinemáticos e estáticos, com velocidade, amortecimento e bloqueio de eixos
- 02Detecção de colisões com Parry, incluindo camadas, eventos e hooks de colisão
- 03Juntas integradas: fixa, de distância, prismática, revoluta e esférica
- 04Raycasts, shapecasts e outras consultas espaciais por meio de componentes ou de um parâmetro SpatialQuery
- 05Interpolação e extrapolação de transformações para passos de tempo fixos
- 06Suporte à precisão f32 e f64
Casos de uso
- Adicionar física de corpos rígidos e colisões a um jogo 2D ou 3D feito com a Bevy
- Criar juntas e restrições, como dobradiças ou deslizadores, em uma simulação com a Bevy
- Executar raycasts ou shapecasts para mecânicas de jogo, como verificação de linha de visão ou de projéteis
Início rápido
- 1
Adicione avian3d às dependências do Cargo.toml (use avian2d para 2D).
avian3d = "0.8" - 2
Adicione PhysicsPlugins ao seu app Bevy e crie entidades físicas com RigidBody e Collider.
Antes de usar
- É vinculado à engine de jogos Bevy, então não é útil fora do Bevy.
- É uma versão anterior à 1.0 (0.8), portanto as APIs podem mudar entre lançamentos.
- Cada versão do Bevy exige uma versão correspondente do Avian, então uma atualização do Bevy pode exigir atualizações coordenadas.
Em coleções
Tópicos
Perguntas frequentes
- O que é avian?
- Uma engine de física 2D e 3D baseada em ECS, desenvolvida especificamente para a Bevy, a engine de jogos escrita em Rust. Avian é uma engine de física para a Bevy, escrita em Rust e disponibilizada em crates separadas para 2D (avian2d) e 3D (avian3d). Ela foi projetada para se integrar diretamente ao Entity Component System da Bevy, de modo que os objetos físicos sejam entidades e componentes comuns, em vez de pertencerem a um mundo de física separado que precisa ser mantido em sincronia.
- avian é gratuito? Qual é a licença?
- avian é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- avian ainda é mantido?
- Manutenção ativa. O último commit de avian foi em 4 de nov. de 2026.
- Para que posso usar avian?
- Adicionar física de corpos rígidos e colisões a um jogo 2D ou 3D feito com a Bevy Criar juntas e restrições, como dobradiças ou deslizadores, em uma simulação com a Bevy Executar raycasts ou shapecasts para mecânicas de jogo, como verificação de linha de visão ou de projéteis
- Como instalar avian?
- Adicione avian3d às dependências do Cargo.toml (use avian2d para 2D).: avian3d = "0.8" Adicione PhysicsPlugins ao seu app Bevy e crie entidades físicas com RigidBody e Collider.
- Onde consigo avian?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/avianphysics/avian
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Biblioteca C++ de física de corpos rígidos e detecção de colisões, compatível com múltiplos núcleos, para jogos e aplicações de VR.
Godot é uma engine de jogos gratuita, multiplataforma e licenciada sob MIT para criar jogos 2D e 3D em um único editor integrado.
Uma engine de jogos leve, orientada a scripts, para jogos 2D, 3D em terceira pessoa e híbridos, criada para ser controlada por scripts e ferramentas de IA.
Engine de física 2D de corpos rígidos para a web, escrito em JavaScript e executado em navegadores e no Node.js.
Um mecanismo de física de uso geral para simular corpos articulados em contato com rapidez e precisão, amplamente usado em robótica e pesquisa em machine learning.