top of page

Create Your First Project

Start adding your projects to your portfolio. Click on "Manage Projects" to get started

Crowd for IronBlood Arena

Engine

Unreal Engine 5

Date

October 2025

Role

Solo Project, All Roles

Software Used

UE5

For my submission for the 2025 California Clash game jam, one of the things I was pretty pleased with was my solution for the crowd in the arena.

I started by making a simple material that was a medium gray color, but adjusted the lightness/darkness by using the PerInstanceRandom node to give some randomness to the color. I then used the value from the PerInstanceRandom to modify the intensity of a sine node that would move the mesh up and down. This resulted in each mesh instance moving up and down different amounts at different speeds.

Initially, I made a blueprint that allowed me to enter the number of rows and columns for a section of crowd, and the ConstructionScript would spawn spheres as InstancedStaticMeshes accordingly. This worked exactly as I intended it to, but it caused a problem; since I was spawning so many ISM's across multiple sections of crowds, there was quite a bit of load time moving from the MainMenu to the GameLevel. I didn't like it.

I decided to try something else! I deleted all of the crowd sections except for one. I then converted one of the crowd sections to a PackedLevelActor, and lo-and-behold it worked! I duplicated that PLA a few times to replace the previously deleted crowd sections.

I then went back to the MainMenu and attempted to start a new game. I found that the load time was almost instantaneous! I was very pleased with the result and it is something I thought was worth sharing. I will definitely be using this technique for things in the future.

bottom of page