Thursday, March 13, 2014

UDK Level Streaming

As my game nears completion I need stitch everything together.

To do this I need to use level streaming via kismet.



Here is a hub with 6 triggers controlling 3 levels. Each level has 2 triggers:
1. load the level
2. unload the level

My hope was that UDK was smart enough to do this slowly in a background thread and notify you when it was complete. Nope. It freezes everything as it loads the new level. For some levels it is fast enough to not be annoying. Not so with the stacks level. That locks things up for around 4 seconds on a solid state drive.

This isn't a problem until you have a VR headset on.

To prevent the player from getting ill from the lock up I have 2 options:
1. make the screen go completely dark for the stacks
2. break the large levels into smaller pieces.

For the moment I'm going to go with the dark option just to link everything together. If you want to go to a new level you will walk through a door into a darkening hallway. When it reaches pitch black I will do the load. Then it will slowly raising the lighting as a cue when it is finished.

I may go back and break slow loading levels into into pieces... But I can only do that once I am absolutely sure the level is complete.

My second hurdle is kismet in each level. I think level specific kismet works but certain events like level loaded and visible are not fired off on the child level when it is loaded. This will require some investigative work.

My third hurdle is overall lighting being different in each level. My solution to this is to have the master level that links them all together to have no lighting at all.

----------------

I played with level loading and the blackness works very well if you carry sound into it. So... even though the level locks up during loading, music keeps playing.

------------------

I've found that on my earlier levels, UDK does not lock up. I need to keep playing with it but it is very promising. I'm able to immediately show the oculus logo as a loading screen load the opening segement and the player can look around the logo while they wait.

No comments:

Post a Comment