Web Analytics

bevy_animation_graph

⭐ 192 stars Spanish by mbrea-c

_Crate de biblioteca:_ Crates.io Crates.io

_Crate de editor:_ Crates.io Crates.io

CI

Bevy Animation Graph

_AVISO:_ Si actualmente usas la versión 0.8.0 o inferior, ten en cuenta que
0.9.0 ha introducido varios cambios incompatibles. Consulta la
guía de migración
para actualizar.

Motivación

Los gráficos de animación son una herramienta esencial para gestionar la complejidad presente en las tuberías de animación para juegos 3D modernos. Cuando tu juego tiene decenas de animaciones con mezclas y transiciones complejas, o quieres generar tus animaciones de forma procedural a partir de muy pocos fotogramas clave, la simple reproducción de clips de animación no es suficiente.

Este crate funciona como una alternativa a la mayoría de bevy_animation, y tiene como objetivo proporcionar un sistema completo de animación y flujo de trabajo de desarrollo que incluye gráficos de animación, máquinas de estados de animación (es decir, controladores de animación) y un editor gráfico para crear tus gráficos de animación y máquinas de estados.

_NOTA: Este proyecto es independiente de los gráficos de animación introducidos en bevy_animation en la versión 0.14._

captura de pantalla de uso ejemplo

Características actuales

en código con una API ergonómica. y destino. están dirigidos cinemáticamente por una pose de animación objetivo. registrando sus nodos personalizados adicionales en el registro de tipos de Bevy. El editor detectará automáticamente todos los nodos registrados.

Características Planeadas

coincidir con una pose objetivo usando fuerzas físicas: hueso objetivo se rastrea y se usa como ancla para una fuerza de resorte sobre el hueso ragdoll. posición/rotación del objetivo relativa a su hueso padre. Puede que necesitemos soporte para motores de articulaciones en Avian para implementar este modo correctamente.

Instalación

Biblioteca

bevy_animation_graph es la parte de biblioteca de este proyecto. Esto debe añadirse como dependencia a su proyecto para usar gráficos de animación. Para instalar la última versión publicada desde crates.io ejecute

cargo add bevy_animation_graph

o agregue manualmente la última versión a su Cargo.toml.

Para instalar la última versión del repositorio git maestro, agregue lo siguiente a Cargo.toml:

# ...
[dependencies]

...

bevy_animation_graph = { git = "https://github.com/mbrea-c/bevy_animation_graph.git" }

...

Editor

bevy_animation_graph_editor es el editor. Puedes instalarlo como instalarías cualquier otro binario de Rust:

# for the latest crates.io version
cargo install bevy_animation_graph_editor

for the latest master

cargo install --git https://github.com/mbrea-c/bevy_animation_graph bevy_animation_graph_editor

for the version from a local workspace

cargo install --path bevy_animation_graph_editor

use the --force flag to force reinstall

Alternativamente, recomiendo echar un vistazo al editor como ejemplo de plugin para configurar tu propio binario de editor en tu crate/espacio de trabajo, consumiendo la misma versión de la biblioteca que tu juego. Esto te permitirá registrar nodos personalizados de gráficos de animación, que son una característica poderosa de este crate.

Comenzando

Consulta los tutoriales en el libro en progreso (muchas gracias a @SarahIhme por iniciar esto!).

Adicionalmente, ejemplos actualizados están incluidos en el directorio de ejemplos.

Los siguientes recursos también pueden ser útiles, pero están algo desactualizados:

una introducción de la biblioteca y editor y una explicación de un ejemplo simple de gráfico de animación. Ver también el video abajo para una demostración del uso del editor. video de uso desactualizado.

Contribuir o solicitar ayuda

Si encuentras un error o quieres discutir posibles nuevas características, siéntete libre de publicar un issue, abrir un PR o contactarme en Discord (@mbreac en el Discord de Bevy, hay una publicación de ayuda para bevy_animation_graph allí: enlace).

Preguntas frecuentes

¿Está listo para producción?

Depende.

Ya puede ser útil para proyectos pequeños, pero no puedo garantizar la API

estabilidad entre diferentes versiones 0.x (es una biblioteca grande, es relativamente joven y no tengo experiencia previa con la programación de animación, así que todavía estoy descubriendo las mejores formas de hacer las cosas). Esto significa que probablemente será necesario entrar en tus activos de gráficos de animación y migrarlos manualmente entre versiones, al menos hasta que encuentre una mejor forma de manejar las migraciones.

Además, habrá errores y otros problemas. Trato de corregirlos a medida que surgen.

¿Implementarás la característica X?

Si es una característica pequeña (por ejemplo, algún nodo adicional de aritmética de vectores o punto flotante) probablemente simplemente no he tenido tiempo de implementarla. Si abres un issue, probablemente la implementaré rápidamente. También se aceptan PRs.

Para características más grandes, es mejor empezar abriendo un issue para discusión o mencionándome en el discord de Bevy.

Tabla de versiones

| bevy | bevy_animation_graph | | ------ | ---------------------- | | 0.18 | master | | 0.18 | 0.10 | | 0.17 | 0.9 | | 0.17 | 0.8 | | 0.16 | 0.7 | | 0.15 | 0.6 | | 0.14 | 0.5 | | 0.13 | 0.4 | | 0.13 | 0.3 | | 0.12 | 0.2 |

Agradecimientos

Muchas gracias a Bobby Anguelov por sus conferencias sobre programación de animación.

--- Tranlated By Open Ai Tx | Last indexed: 2026-06-13 ---