Vertex animation baking tool, shaders and animation system for Unity DOTS/ECS.
Go to file
2021-04-16 16:13:33 +02:00
Documentation~ Update README.md 2021-02-19 02:40:06 +01:00
Editor ApplyAnimationBounds option. 2021-02-18 18:29:40 +01:00
Runtime Update VA_AnimatorSystem.cs 2021-04-05 22:13:26 +02:00
Samples~ Fix textures example3. 2021-04-13 22:23:19 +02:00
Tests Interpolation 2021-02-09 17:21:42 +01:00
.gitignore AnimatorSystems test. 2020-12-06 02:36:15 +01:00
CHANGELOG.md Mono example. 2021-04-13 22:11:12 +02:00
CHANGELOG.md.meta Vertex animation base. 2020-11-02 23:49:30 +01:00
Editor.meta Vertex animation base. 2020-11-02 23:49:30 +01:00
LICENSE.md Update LICENSE.md 2021-01-21 22:30:58 +01:00
LICENSE.md.meta Vertex animation base. 2020-11-02 23:49:30 +01:00
package.json Update package.json 2021-04-13 22:24:00 +02:00
package.json.meta Vertex animation base. 2020-11-02 23:49:30 +01:00
README.md Update README.md 2021-04-16 16:13:33 +02:00
README.md.meta Vertex animation base. 2020-11-02 23:49:30 +01:00
Runtime.meta Vertex animation base. 2020-11-02 23:49:30 +01:00
Tests.meta AnimatorSystems test. 2020-12-06 02:36:15 +01:00
THIRD PARTY NOTICES.md Example2. 2021-04-05 22:20:35 +02:00
THIRD PARTY NOTICES.md.meta Vertex animation base. 2020-11-02 23:49:30 +01:00

TECH ART OUTSOURCE - Vertex Animation

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.

Features

  • Vertex animation model baker
    • Multiple animations (stored in one Texture2DArray)
    • LOD generation
    • Prefab generation
    • Animation book generation
  • DOTS animation system
    • Simple API
    • Animation library and books
  • Shaders
    • Lit vertex animation shader
    • Interpolation
    • Normal encoding and decoding
    • Shader graph support
    • Animation blending

Model Baker

Artist friendly GUI for converting models.

DOTS Animation System

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();
}

Shaders

Lit example shader (build in shader graph).
Full shader graph support.

Install

Installing from a Git URL

Documentation

Getting Started

  • Example 1: Mainly used for testing.
  • Example 2: Contains an animation system that shows how you could setup animated characters and a spawning system to test performance.
  • Example 3: MonoBehaviour example for if you are not using DOTS.

Used By

LICENSE

Overall package is licensed under MIT, unless otherwise noted in the 3rd party licenses file and/or source code.