Los modelos tridimensionales animados no se representan en Bevy como una única entidad, sino como una jerarquía de entidades. Esta estructura dificulta localizar qué componente controla sus movimientos: AnimationPlayer. El tutorial construye un modelo mental paso a paso para relacionar un personaje importado desde un archivo .glb con la animación almacenada en un AnimationGraph.
Una vez cargado el modelo, Bevy inserta automáticamente un componente AnimationPlayer en una entidad de su jerarquía. Para ejecutar el movimiento, el programa debe localizar ese componente y asociarlo con la animación correspondiente. Las animaciones no se manipulan individualmente en los casos sencillos descritos, sino mediante un AnimationGraph capaz de almacenar varias animaciones y combinarlas. Cada una se identifica mediante un NodeIndex.
El ejemplo oficial Animated Mesh carga el clip de animación 2 del archivo .glb, crea un AnimationGraph, lo incorpora al almacén de recursos y conserva su Handle. Después genera la escena del archivo, añade un componente con el Handle y el NodeIndex, y busca recursivamente la entidad descendiente que contiene AnimationPlayer. Esta búsqueda evita tener que conocer de antemano la posición exacta del componente dentro de la jerarquía.
La explicación también detalla el papel de WorldAssetRoot, GltfAssetLabel, Commands::spawn, AnimationToPlay y los sistemas de observador. El texto está dirigido a personas que ya dominan los fundamentos del sistema entity-component-system de Bevy y necesitan conectar la documentación oficial con una explicación más estructurada del flujo de animación.
