Harry RoseVFX

I don't understand why the terrain is generated from the edges towards the player in the first place, but since that is so (and actors / character just fall), it is important to reliably determine if the terrain is loaded, or still loading, so as to hold up until it completes. How?

Intentions don't equal outcome.

Harry

0 0
voxelfarmtorres
There is a reason for this. Higher LODs are processed with higher priority. (Low LODs are closer to the camera, higher LODs are fartherer away.) As the scene focus changes, higher LODs change at a proportionally slower rate than lower LODs. It is much more efficient to prioritize higher LODs because they are likely part of the next scene configuration, any time spent in producing them can be reused when the scene changes. This is not the same for lower LODs, so by prioritizing higher LODs you get scenes at a much faster rate.

Since the generation of all LODs is asynchronous, you must disable the falling of the main character anyway. Even if low LODs were produced first, they will arrive in the scene with some delay, always enough for your character to begin falling. A typical trick is to place an invisible collider box under the character's feet, and disable movement until the scene is complete. We also recommend hiding the scene until the loading is complete. 
0 0
Harry RoseVFX

Ah, yeah ... "thank you". I would never have though of putting characters et all on geometry so they don't fall ...

Again: the problem is that I need to determine when the whole voxel scene has completed loading, because for some strange reason I do not intend having the player watch how the terrain is generated ...

 

Intentions don't equal outcome.

Harry

0 0
Ericool
Screenshot (1).png  Hi Harry RoseVFX,
We have an event for a new scene that you can implement in blueprints called SceneSwapped.

In the editor open the level blueprint, then drag the actor from the level to the event graph. That will create a reference to this actor.
In the event graph place a node from the actor reference blue pin and go Under VoxelFarm category to select Scene Swapped event.
With this event you can fire what you need. You will have to wait until the event is received for the first time.

In case you cannot see the event in the graph with the current Unreal version you are using you might want to open the file VoxelFarmWorldActor.h to where the function SceneSwapped is declared and add BlueprintCallable next to BlueprintImplementationEvent within the UFUNCTION macro, then recompile.

Hope this helped you.
0 0