Draw a crowd with Mass
What Crowds with Mass is, when to choose it over the actor pool, the three ways one entity is drawn, why you author everything once on the actor class, how view state and server values stay apart, and the order to read this section in.
Turn Mass on for a map
Choose the Crowdy Mass Rendering Backend on a map profile, start from the shipped Mass profile, set the Backend Config and the Crowdy Mass project settings, flag the character's material, learn that the SDK turns off the engine's animation pass for you, add the module dependency, and check the crowd with one client.
Make a character draw as a crowd row
Set up the Crowdy entity component and the state struct a crowd row reads, give the class a skinned mesh, check it with crowdy.mass.derive, and learn where a row's entity config comes from.
Set up the animation set
Create a Crowdy Mass Anim Set and the animation bank behind it, set the bank on the set, connect it to an authored config's mesh, bind the set to a character class, and author gaits.
Play poses and one-shot actions
Hold a pose on a crowd row from a replicated enum with CrowdyState and CrowdyHeartbeat, and play one-shot actions with Send Crowdy Action or an event marked CrowdyAction (Is A One-Shot Action).
Promote close entities to actors
Build a near tier shell so a crowd row that comes close is drawn as a real pooled actor with its own animation Blueprint: the shell, Entity Transform Offset, pooling, distances and counts, the animation getters, the shell's animation Blueprint, and demotion.
Run your code on a crowd row
What a Crowdy event body does when the observer draws the entity as a crowd row: the per-class stand-in, what cannot work there, which recipients reach rows, registered handlers and what they replace, and the rate limit.
Add your own crowd data
Give crowd rows a value of your own: write a Mass fragment, trait and processor, land a replicated Crowdy State property on the fragment with RegisterStateFragmentField, and check it with crowdy.mass.state.verdict.
From Blueprint
5 items
From C++
5 items
Fix a crowd that does not look right
Fix a grey crowd, rows that never appear, stand in bind pose, float or play another row's clip, poses and actions that do nothing, missing server values, a class that never promotes, and a Blueprint field read that answers false. Lists the crowdy.mass console commands and the order to check a new setup.
Examples
1 item