Hi, I’m a beginner artist/level designer. I have a fundamental level design problem that needs clarification.
Starting with an example, you have room A and room B in one level. When your camera is placed in room A, room B blocked by the door will be occluded by the CPU and not rendered. So instead of rendering the entire level, only room A will be rendered. My question is that what’s the point of having inter-loading levels (putting room A and room B in separate levels) or even level streaming, if having one big seamless level isn’t going to affect your GPU rendering time as only one room will be rendered at a time?
My own answer to this is: having one big level may cost the CPU and RAM. Because CPU takes more processing time for occlusion. And the big level will load longer into the RAM (a long loading screen) and takes more RAM space. Am I correct?
My reasoning comes from my understanding of the way art assets are loaded into an UE4 level (which maybe horribly wrong):
- When loading a level, every asset of the level is loaded into the RAM from the hard drive.
- CPU decides what part of the level will be occluded, and then issues draw calls to the GPU for rendering.
- All information being rendered is instanced in the VRAM of the GPU from the RAM.
While writing the topic, I felt an urge to put a BIG question mark at the end of every sentence…so please correct me as that’s why I’m here. Thanks