Vertex animation baking tool, shaders and animation system for Unity DOTS/ECS.
A vertex animation baking tool, shaders, and animation system for Unity DOTS/ECS.
Render tens of thousands of models at the same time each with its own animation state.
Artist friendly GUI for converting models.
Sample code to play an animation.
protected override void OnUpdate()
{
float deltaTime = UnityEngine.Time.deltaTime;
Entities.ForEach((Entity entity, ref VA_AnimatorComponent ac) =>
{
// Get the animation lib data.
ref VA_AnimationLibraryData animationsRef = ref ac.animationLibrary.Value;
// Set the animation index on the AnimatorComponent to play this animation.
ac.animationIndex = VA_AnimationLibraryUtils.GetAnimation(ref animationsRef, animationName);
// 'Play' the actual animation.
ac.animationTime += deltaTime * animationsRef.animations[ac.animationIndex].frameTime;
}).ScheduleParallel();
}
Lit example shader (build in shader graph).
Full shader graph support.
This project is developed by the TAO (Tech Art Outsource) group at BUAS (Breda University of Applied Sciences).
There are plenty of improvements to be made, e.g.:
Overall package is licensed under MIT, unless otherwise noted in the 3rd party licenses file and/or source code.