MasterNinUNITY TOOLS

ECSANIMATOR / SKELETAL CROWD ANIMATION

Author with Animator.
Animate with ECS.

Bring your AnimatorController workflow to animated crowds. Convert characters offline, evaluate animation with Burst jobs, and render with GPU skinning through Unity Entities Graphics.

Asset Store release in preparation · Preview 0.1.0 · Updated October 4, 2026

ECSAnimator promotional artwork showing red and blue armies with skeletal animation overlays
AI-assisted promotional artwork. See actual Unity footage below.
01AnimatorController02ECS runtime03Burst jobs04GPU skinning

THE WORKFLOW

Familiar authoring.
A runtime built around entities.

Prepare reusable character data once, then connect animation to your game's ECS logic.

01 / AUTHOR

Keep your Controller.

Use parameters, transitions, Blend Trees and supported layer features. Preview conversion diagnostics before building your character data.

02 / CONVERT

Build offline.

Build a single _EntityDesc.asset with compiled animation, derived meshes and materials. Load this descriptor and its dependencies directly.

03 / DRIVE

Animate your crowd.

Prepare once, spawn ECS characters and drive exact Controller parameter names, layer names and exported state paths. Burst jobs and GPU skinning handle animation.

IN UNITY

See the animation in motion.

Real Unity Editor demonstrations. The crowd video uses the updated October 4 sample animations; the battle video is retained from September 29.

30 SECONDS / BATTLE

Two factions. One animation workflow.

A wide battle view followed by a closer look at swordsmen and crossbowmen moving, attacking and reacting. Movement and combat are example gameplay systems. Recorded September 29 in Unity 2022.3.62f1; this is an earlier gameplay demonstration.

Download battle video

24 SECONDS / UPDATED CROWD

Idle, trigger, return to Idle.

Updated four-second breathing Idle and revised sword stance, followed by Death Trigger and return to Idle. Recorded October 4 in Unity 2022.3.1f1 / Direct3D 11. The scene contains 2,500 characters; close-up views show part of the formation.

Download crowd video

Silent videos with English on-screen captions. Recorded at 1920 × 1080 with a fixed 30 FPS capture timestep. Recording frame rate and promotional artwork are not performance benchmarks or capacity guarantees.

QUICK START

From package to first character.

These instructions describe the current preview package. Begin with the supplied character before converting your own.

  1. Install the package.

    For the Asset Store release, use Window > Package Manager > My Assets > Download > Import. For a supplied .unitypackage, use Assets > Import Package > Custom Package. Keep all files selected and wait for dependency resolution and compilation. Add package from tarball applies only to a separate UPM .tgz distribution.

  2. Import the Quick Start sample.

    Select ECSAnimator in Package Manager, open Samples and import Quick Start. The sample includes a character and prebuilt animation data.

  3. Prepare the scene.

    Use URP with the SRP Batcher enabled and BatchRendererGroup variants retained. Add a Light and one active Game Camera tagged MainCamera, using the first display and no Target Texture or stereo/XR.

  4. Create the shared settings.

    Open Tools > ECSAnimator > Settings. Create the global settings resource before entering Play mode. Keep motion vectors enabled when your camera effects require them.

  5. Run the supplied character.

    Drag NewcomerQuickStart.prefab into the scene and press Play. With Legacy Input Manager or Both enabled, use WASD to move, 1/2/3 for Attack/Hit/Death, and Delete to destroy the character. Input System-only projects can still spawn and play Idle.

  6. Convert your own character.

    Start with a saved Prefab, a simple Idle/Run Controller with a float Speed parameter, and an ECSAnimator/Lit material. Open Tools > ECSAnimator > Convert Character, review diagnostics, then Build. Assign the generated _EntityDesc.asset to SimpleCharacterExample and use the exact Float parameter name Speed.

Updating an existing project? Load CharacterRuntimeAsset directly and retain its CharacterPreparedAsset handle. Older character Template and external Payload loading APIs have been removed. Rebuild older external-data outputs from source, and preserve local edits before refreshing imported samples. Read the migration notes.

Read the complete English user manual for conversion, animation control, equipment, LOD, custom Shaders and the API reference. The same documentation is included in the package's Documentation~ folder. Follow the sample instructions for setup and cleanup.

BEFORE YOU INTEGRATE

Know what the runtime handles.

Does it replace every Animator feature?

ECSAnimator converts supported skeletal animation. Root Motion, runtime IK / Foot IK and StateMachineBehaviour callbacks are omitted with diagnostics. BlendShapes and non-skeletal animation curves are outside the supported scope. Your gameplay systems own movement and behavior.

Which render pipelines and platforms should I start with?

Start with Unity 2022.3, URP 14 and Windows Direct3D 11, the environment used for the demonstrations. Built-in and HDRP paths are not supplied. Do not infer mobile, Unity 6, WebGL or XR qualification from these recordings. Other target devices require their own validation.

Can I use my existing materials and shaders?

For first use, create a material with Assets > Create > ECSAnimator > Lit Material. Ordinary URP/Lit materials are not automatically converted. External HLSL and Shader Graph integration are preview workflows that need separate integration and target testing; they are not a promise of arbitrary shader compatibility.

Is this a navigation or combat system?

The product handles character animation and rendering integration. AI, navigation, collision, combat rules and locomotion remain game-owned. The battle video shows an integration example, not a complete RTS framework.

How many characters can my project animate?

The Idle and Trigger demo scene contains 2,500 characters. Close-up camera views show only part of the formation. Performance depends on hardware, meshes, materials, animation complexity, LOD and your game systems. These demonstrations do not guarantee a frame rate or maximum character count.

Where can I get the package and report a problem?

The Asset Store release is being prepared. For availability or technical questions, contact d3luning@gmail.com. For a bug report, include the package and Unity versions, render pipeline, platform / graphics API, reproduction steps and relevant errors. Remove secrets and unrelated personal information from logs.

MASTERNIN / INDEPENDENT UNITY DEVELOPMENT

Building tools for
animated worlds.

MasterNin develops ECSAnimator for Unity developers working with skeletal characters and crowds. This is the home for product information, demonstrations and integration help.

ECSAnimator gray crowd icon

Questions about ECSAnimator?

Send an integration question or a reproducible bug report.

Email support