https://github.com/chenjd/render-crowd-of-animated-characters
Animation Baker and Instancing for Animated Characters: Using GPU to implement large-amount animation characters rendering. The animation map for vertex shader to modify the vertex position of the mesh at runtime. Using GPU instancing to reduce draw calls.
https://github.com/chenjd/render-crowd-of-animated-characters
animated-characters animation-map baker draw-calls gpu-instancing unity vertex-animation vertex-animation-texture
Last synced: 1 day ago
JSON representation
Animation Baker and Instancing for Animated Characters: Using GPU to implement large-amount animation characters rendering. The animation map for vertex shader to modify the vertex position of the mesh at runtime. Using GPU instancing to reduce draw calls.
- Host: GitHub
- URL: https://github.com/chenjd/render-crowd-of-animated-characters
- Owner: chenjd
- License: mit
- Created: 2017-07-30T05:18:17.000Z (almost 8 years ago)
- Default Branch: master
- Last Pushed: 2024-12-28T22:33:56.000Z (5 months ago)
- Last Synced: 2025-04-13T13:13:34.552Z (about 1 month ago)
- Topics: animated-characters, animation-map, baker, draw-calls, gpu-instancing, unity, vertex-animation, vertex-animation-texture
- Language: C#
- Homepage:
- Size: 9.8 MB
- Stars: 1,671
- Watchers: 71
- Forks: 297
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# AnimMap Baker For Animated Characters


#### BlogPost
[How To Render 10,000 Animated Characters With 20 Draw Calls In Unity](https://medium.com/@chen_jd/how-to-render-10-000-animated-characters-with-20-draw-calls-in-unity-e30a3036349a)
#### Description:
Using GPU to implement large-amount animation characters rendering. The animation map for vertex shader to modify the vertex position of the mesh at runtime. Useing GPU instancing to reduce draw calls.#### Supporting Shadows
[](https://www.youtube.com/watch?v=WUNq5sDMAg8 "")#### Using Unity’s AR Foundation to create 10,000 toy soldiers in the real world on an Old iPhone 7.
[](http://www.youtube.com/watch?v=choBOPO1xgo "")The initial version was released on GitHub on 30 Jul 2017, and of course, it is still on GitHub. However, if you can buy me **a cup of coffee**, I will be very
happy :-).[:heart: Sponsor](https://github.com/sponsors/chenjd)
[:heart: Animation Baker and Instancing for Animated Characters on Asset Store](https://assetstore.unity.com/packages/tools/animation/animation-baker-and-instancing-for-animated-characters-183598)
Recently I added support for Unity 2023 and the Universal Render Pipeline (URP), so it can be used from Unity 5.X to Unity 2023.
And I will create a video tutorial to demonstrate how to use it. If you want to know more about the implementation behind it, you can read this [article](https://medium.com/chenjd-xyz/how-to-render-10-000-animated-characters-with-20-draw-calls-in-unity-e30a3036349a) I wrote.
#### Features:
✅ Support Unity 2023.✅ Support Shadows.
✅ Using the animation map to modify the position of vertices of your characters at runtime to avoid a lot of cost of skin calculation.
✅ Using GPU Instancing to reduce the number of draw calls, only 20 draw calls are
needed to render 10,000 soldiers playing attack actions in the demo scene.✅ Using the animation map to modify the position of vertices of your characters at runtime to avoid a lot of cost of skin calculation.
✅ Using GPU Instancing to reduce the number of draw calls, only 20 draw calls are needed to render 10,000 cats playing idle actions in the demo scene.
✅ Support AR Foundation.
✅ Support URP(SRP Batcher)only 7 draw calls are needed to render 10,000 cats playing idle actions in the demo scene.
#### Model Resource Link:
[RTS Mini Legion Footman Handpainted](https://www.assetstore.unity3d.com/en/#!/content/86576)
---
#### Bake legacy animation info into anim map:

animated characters without animator & skinnedmeshrender.#### GPU Instancing & mesh render for large number of animated characters:

10,000 animated characters with 22 drawcalls.