So I’ve got a bit of a dilemma here with my game that I’m making. Essentially, I’m looking for a system that can keep the integrity of my world intact while giving me better optimization. Let me explain…
I’m looking for a way to dynamically manage the visibility of certain areas or parts of the main map while keeping the Actors and Static Meshes which inhabits the map’s collision and geometry intact.
Additionally, I need a solution that ensures any modifications made to these areas, such as moving objects or destroying items, remain there when revisiting these areas. It is also important that AI characters do not fall through the floor when areas are being unloaded, even when an area is toggled off or becomes invisible. The goal is to reduce performance costs for areas far from the player without losing collision, AI logic, or persistent gameplay changes.
Now, my current dilemma arises because level streaming does not meet these requirements. When a streamed level is unloaded, any changes made to it are erased and replaced with a fresh state upon reload. Furthermore, AI in unloaded levels falls through the world or stops functioning entirely, which lets just say is not good for my game lol. The “Make Visible After Load” option in level streaming also does not provide the control I’m looking for, as it disables both visibility and collision simultaneously, leaving no way to toggle Actor visibility alone (while keeping static mesh and Actor’s collision intact). These limitations prevent level streaming from offering the fine-grained control that I require for toggling specific parts of the map while maintaining collision and functionality.
This map that I am making has the following characteristics:
- All indoors, Immersive Sim style map and map design
- Single Player (with AI being only other Pawn on map)
- many interactable physics objects (that should remain in their place and not be reset ever)
I have done a bit of research on World Partitioning, but since my map will not be very massive and It seems that I will have less control when compared to level streaming, I’m apprehensive if this would be the right fit for me.
If anyone knows if there are any better options or have any opinions about the systems I talked about here, please let me know. I want to make sure that I have a good feeling about whatever system that I choose before building much of my game off it.
Thank you in advance everyone