Flocks 4 UE4

10,000 Fish Instanced Meshes running away from a Flee Volume (Shark)

Company:
Solo Development.

Engine:
Unreal Engine 4.

Description:
While studying at Canberra Institute of Technology, I was given an assessment to create a commercially viable product - this could be a game, plugin or other form of monetised project. I chose to create a plugin for Unreal that could handle different types of flocking algorithms, hence this Flocks 4 UE4 was born. This plugin, while looking deceptively simple, is quite complex and optimised for many different types of games.

Flocks 4 UE4 has options for running on the CPU directly - supporting about 500 agents in real-time, or on the GPU (via a compute shader) - supporting up to 10,000 agents.

This plugin also supports many other features:

  • Flocking groups (don’t interact with other groups)

  • Flee Volumes

  • Goal Volumes

  • Weights for each force (alignment, cohesion, separation)

  • Instanced static mesh option

  • Skeletal (animated) mesh option

  • Flying Movement (airborne or swimming)

  • Herding Movement (grounded)

While I never released this product on the Marketplace, I researched and documented all of the necessary steps to do so. This taught me a lot about how to make plugins for Unreal.

400 Agents running with animated meshes using Deer Mesh from "A Boy and his Kite".

7000 Agents running with instanced static meshes on the Herding Demo.