Vertex Animation Toolset, crowd rendering

Of course, all of the Examples use instanced static mesh components, with its “Update Instance Transform” blueprint function you can simply set each instance’s orientation to whatever you want.


can his be used to lay ut a crowd based on something like flipbooks on planes? Im looking to populate my environment with random people like in the streets or in an arena or nightclub.

Im thinking each person would be like a generic idle or action cycle. The characters are not 3d though. They are png sequences or maybe a sprite sheet or fli[book. I would like to lay them down as background characters. Any thoughts?

Heres a sample of where im at… took me a while to figure out how to do a 2d composite… now im looking to fill this ware house with a crowd of characters.
[2D Compositing in Unreal Engine Test 02 - YouTube

2D Compositing in Unreal Engine Test 02 - YouTube](2D Compositing in Unreal Engine Test 02 - YouTube)

Rendering an animation into a 2D flipbook is not part of this plugin.

This plugin is for baking the Vertex Animation in 3D of a Skeletal Mesh, to later be used by a Static Mesh through the World Position Offset input of the Material Shader.


Hey, I Just sent a message about granting marketplace access to everyone who purchased the beta version. The email address that will receive this message is the one associated with your gumroad account.

In case you purchased the beta version and have not received this email message me at

Is it possible you can upload a video tutorial on creating an animated mesh from scratch. I am having trouble following along. Thank you!

Hey, in case you are having problems following the example usage video,

please let me know what parts of the video are confusing you so that I can assist properly.

I did not see this tutorial.Thank you, so I followed along and this was my result.

Any ideas? Thank you.

I see, there are two thing that you can check:

1º-Make sure the generated Texture’s Compression Settings is set to either HDR or VectorDisplacementmap.

2º-Open the Static Mesh asset in the editor, on the toolbar: UV->UV Channel 1 to display the UVs generated by the tool. Then on LOD Auto, set it to the different LODs that your model has to display the UVs of each LOD, making sure these do not have random red lines, and that they are lined up horizontally.

Is it possible to use this toolset to fill a football arena with cheering fans?
I’ve been trying to solve it for a while, but maybe this technology is the solution?

Here are my UV’s, they appear scrunched. There is only one LOD and both Output Texture are Vector Displacement Maps

Sure! This plugin started as a tool for creating crowds of cheering fans for a game of mine, you can check out the first video where there are 10.000 mannequins playing an animation in place, or inside the Content Examples of the plugin there’s another static crowd of 4200 mannequins playing different animations as well.


I just saw what the issue is, Those are UVs generated properly by the tool, as their layout is horizontal on 1 row of the UV.

However it is on UV channel index 1, but in your material you are using TexCoord with Coordinate Index = 0. Simply changing Coordinate Index = 1 in the TexCoord expression, like the UV Channel index where the UVs were generated, will solve it.


I will give it a try :slight_smile:
Do you have any good ideas on how to spawn out of the animated crowd into the stands?

Okay, very cool! This is definitely the missing step! Thank you!

However it seems a tiny bit splotchy. The animation is definitely there, I see it doing what it’s supposed to be doing,however it is rough around the edges. Any ideas? Up the resolution?

Try Changing the texture Compression Settings from VectorDisplacementmap to HDR.

I have something similar to that in the Content Examples of the plugin where 4200 animated mannequin instances are spawn inside a volume on begin play.

This is done just using 1 Hierarchical Instanced Static Mesh Component, and calling the “Add Instance World Space” function through blueprint.

A simple setup could be to have a bunch of sockets in the Stand model and when calling the Add Instance function you pipe in the transform of a random socket into the instance’s transform.


This was the answer!! Thank you so much :slight_smile:

EDIT: Just a heads up, it would be really cool if you can click on other things when the BakeAnim window is open, because constantly having to reconfigure it when one option is wrong, can be time consuming. Hopefully this could be easy, thank you!

New version of the Baking tool, much simpler now to setup everything in versions 4.24 onward.

Hello, I love your tool and got off and running with it pretty quickly. I was hoping to apply the vertex animation materials to skeletal mesh to be able to layer the vertex anim onto the imported bone anim. But it looks like the vertex animation is somehow overriding the bone animation, causing the bone animation to “freeze” at frame 1, and the vertex animation to play in a loop on the frame 1 position.

Is this inevitable, or are you able to layer vertex anim materials with bone animation?


Apologies if I’m missing something obvious… the tool is working great, but …

I’m not getting a packaged build to run with VertexAnimToolset enabled using 4.24.3. It does package successfully, but the packaged .exe does not run as it fails to load the plugin. I tried in my own project, the VertexAnimToolset example project, and a virgin 3rd person template project, using Developer & Debug & shipping builds on win64.

The log shows the following mostly unhelpful error when launching:

ProcessResult.StdOut: LogPluginManager: Error: Unable to load plugin 'VertexAnimToolset'. Aborting.
Log.WriteException: ==============================================================================
Log.WriteException: ERROR: Client exited with error code: 1
Log.WriteException: (see C:\Users\lars\AppData\Roaming\Unreal Engine\AutomationTool\Logs\J+Games+Epic+UE_4.24\Log.txt for full exception trace)
Log.WriteException: AutomationException: Client exited with error code: 1
Log.WriteException: at Project.RunStandaloneClient(List`1 DeployContextList, String ClientLogFile, ERunOptions ClientRunFlags, String ClientApp, String ClientCmdLine, ProjectParams Params) in D:\Build\++UE4\Sync\Engine\Saved\CsTools\Engine\Source\Programs\AutomationTool\Scripts\RunProjectCommand.Automation.cs:line 374
Log.WriteException: at Project.RunInternal(ProjectParams Params, String ServerLogFile, String ClientLogFile) in D:\Build\++UE4\Sync\Engine\Saved\CsTools\Engine\Source\Programs\AutomationTool\Scripts\RunProjectCommand.Automation.cs:line 176
Log.WriteException: at Project.Run(ProjectParams Params) in D:\Build\++UE4\Sync\Engine\Saved\CsTools\Engine\Source\Programs\AutomationTool\Scripts\RunProjectCommand.Automation.cs:line 109
Log.WriteException: at BuildCookRun.DoBuildCookRun(ProjectParams Params) in D:\Build\++UE4\Sync\Engine\Saved\CsTools\Engine\Source\Programs\AutomationTool\Scripts\BuildCookRun.Automation.cs:line 214
Log.WriteException: at BuildCookRun.ExecuteBuild() in D:\Build\++UE4\Sync\Engine\Saved\CsTools\Engine\Source\Programs\AutomationTool\Scripts\BuildCookRun.Automation.cs:line 39
Log.WriteException: at AutomationTool.BuildCommand.Execute() in D:\Build\++UE4\Sync\Engine\Saved\CsTools\Engine\Source\Programs\AutomationTool\AutomationUtils\BuildCommand.cs:line 263
Log.WriteException: at AutomationTool.Automation.Execute(List`1 CommandsToExecute, Dictionary`2 Commands) in D:\Build\++UE4\Sync\Engine\Saved\CsTools\Engine\Source\Programs\AutomationTool\AutomationUtils\Automation.cs:line 538
Log.WriteException: at AutomationTool.Automation.Process(String] Arguments, StartupTraceListener StartupListener) in D:\Build\++UE4\Sync\Engine\Saved\CsTools\Engine\Source\Programs\AutomationTool\AutomationUtils\Automation.cs:line 508
Log.WriteException: at AutomationTool.Program.MainProc(String] Arguments, StartupTraceListener StartupListener) in D:\Build\++UE4\Sync\Engine\Saved\CsTools\Engine\Source\Programs\AutomationTool\Program.cs:line 176
Log.WriteException: at AutomationTool.Program.<>c__DisplayClass1_0.<Main>b__2() in D:\Build\++UE4\Sync\Engine\Saved\CsTools\Engine\Source\Programs\AutomationTool\Program.cs:line 88
Log.WriteException: at AutomationTool.InternalUtils.RunSingleInstance(Func`1 Main) in D:\Build\++UE4\Sync\Engine\Saved\CsTools\Engine\Source\Programs\AutomationTool\AutomationUtils\Utils.cs:line 731
Log.WriteException: at AutomationTool.Program.Main(String] Arguments) in D:\Build\++UE4\Sync\Engine\Saved\CsTools\Engine\Source\Programs\AutomationTool\Program.cs:line 88
Log.WriteException: ==============================================================================

FWIW, also seeing the warning about Developer module type being deprecated for VertexAnimToolset during the packaging phase:

LogPlayLevel: Warning: WARNING: The 'Developer' module type has been deprecated in 4.24. Use 'DeveloperTool' for modules that can be loaded by game/client/server targets in non-shipping configurations, or 'UncookedOnly' for modules that should only be loaded by uncooked editor and program targets (eg. modules containing blueprint nodes)
LogPlayLevel: Warning: J:\Games\Epic\UE_4.24\Engine\Plugins\Marketplace\VertexAnimToolset\VertexAnimToolset.uplugin: warning: The 'Developer' module type has been deprecated in 4.24.