I’m completely new to UE4, so suggestions are welcome if there’s a better way to go about this.
I want to create a world with a moderate number of actors, let’s say 200, each of which will have between 20 and perhaps 100 smaller actors within its main volume, using relative transforms to the parent. The children don’t have to be rendered unless the camera viewpoint is very close to their parent, so only a handful of those 200 parents will be drawing their children at any given moment.
I’m aware of the “Desired Max Draw Distance” configuration for meshes, but in playing this this a little, it doesn’t seem hierarchical. That is, if I turn off drawing beyond some distance for the parent actor’s mesh, it culls the parent, but its children are still rendered. I know that I can loop through and set this value for all the children individually, but that means that something in the engine is looping through testing the draw distance for each of the children on each frame, no? That’s maybe okay for 100 children, but not for 200 actors times 100 children. I really want this to be hierarchical: test one “node”, and if the node fails the distance check, don’t bother to test the children.
Is there a way to do this? I looked at the “hierarchical LOD” system, but that appears to be doing some runtime dynamic work, and since these relationships are static, I’d rather not leave this up to a complex runtime system like that. Can it be done statically? I don’t mean just the setting of the value, but I want a lower frequency for the actual culling.
Thanks!