Open World NPC Optimization with network support

Sergio Cavalli - Blueprints - May 2, 2019
4.44 out of 5 stars(16 ratings)
  • 75%
  • 6%
  • 13%
  • 0%
  • 6%

Persistent Open World NPC optimization component for any character class. Compatible with behavior tree and any AI logic. Component runs on timer, instead of Tick for additional performance and supports Dispatchers and Events associated with it

  • Supported Platforms
  • Supported Engine Versions
    4.16 - 4.27
  • Download Type
    Asset Pack
    This product contains an assortment of Unreal Engine assets which can be imported into a pre-existing project of your choice.

Preview video

Download Demo project

Tutorial how to setup component


This component provides performance boost by optimizing the NPC out of sight of the camera.

The component is completely autonomous — you just need to add it to the AI ​​(NPC) class.

The component works only with the class-Character class. If you have more skeletal meshes in your class (for example: another skeleton hand for a first person or a skeleton mesh for weapons or static meshes (for example, shields or weapons), the component will also work with them.

But component optimizes only the skeleton mesh and movement your NPCs, because this is what loads the system.

Everything else UE4 optimizes independently.

The NPCs outside of the camera's field of view (the view frustum) aren't visible, and can be culled. The rejected NPCs outside the truncated camera view are no longer displayed, leaving only a handful of NPCs within this view.

In online mode, the Component works with the client. All objects that are out of sight still remain in the game world, so if you use a dedicated server, other players will be able to see them. So you get the load on the system only those NPCs that are visible in the frame.

Technical Details


  • The component automatically recognizes how it is used: for a dedicated server or a single mode
  • Support Single mode
  • Support Coop mode (Server - Client)
  • Support Dedicated server
  • The component not use Tick he work on a timer
  • Has a dispatchers and number of other settings
  • The component does not affect the amount of materials in your mannequin.
  • The component has Dispatchers and variables that will help to bind component to your logic.
  • The component does not affect the behavior of your NPC and is compatible with the behavior tree. There are also a number of settings and for your convenience they have descriptions.
  • The component can be added to the parent class and it will work for all children.
  • The component supports AnimNotify, but if you have the sound of steps in the animation it will only work in the near (close) radius. Or you can use a variable to force it on work, but first, why do you need the sound of steps on the other end of the map? And secondly, it will give you more load on the system.

Number of Blueprints: 4

Number of Components: 1

Input: demo uses keyboard and mouse inputs.

Network Replicated: Yes.

Supported Development Platforms: (Windows, Mac)

Supported Target Build Platforms: (Windows, Mac)

Documentation: How add and setup component