Announcement

Collapse
No announcement yet.

How can I use level streaming with huge maps

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • replied
    Originally posted by Monkey-666 View Post
    Umm... the only thing i said wasnt working was the splitting up of the landscape and sending it to a streaming level. Hence why i said I keep the landscape in its own level and just split everything else up.

    I wasnt trying to offend or belittle, so please don't take it that way. But your exact words were "I tried using the save game system to no avail and I tried to figure out how to use the config system (way over my head)" So i took from that that you couldn't get it to work. I don't think it was an unfair assumption.

    "However having two maps that are at the max size with level streaming load time cause the engine to time out and crash." I don't mean to beat a dead horse but thats because you need to split up the streaming levels. The whole idea of streaming levels is that they "stream" in continuously, byt loading small chunks at a time. You don't stream in an entire 10km area... But surely, with your game industry experience you know that already.

    I'm not taking anything personal, was just offering some sensible advice, take it as you will.
    See at the moment I am not streaming anything so there are not steaming levels to split up. I have one level and many dungeons attached to that level, the way it works right now is the player gets to a entrance and is teleported which calls a hard load or the dungeon level. The player leaves the dungeon the same way, but this causes the player to rest all his values each time. My main goal is to ether keep these values from resetting or to save them someplace else and reload them during the levels initialization step. I can do this with config files but I am not sure how to do it, I can do it by saving the player and interrupting the the levels initialization and checking to see if I have a saved player before loading a new player, but again I don't know what function to call or class to extend to do that.

    If streaming is the only solution I need to know if there is a way to trick the player so he doesn't see large missing sections of the map, this is an issue because of how the map was designed lots of mountains creating large valleys. My boss built the level himself and hates the idea of cutting it up, so I need to convince him that it is the right thing to do if it is. Keep in mind the dungeons are just as big and built like tunnels so they too would need to be cut up. Additional levels being created can be built for this since they haven't been built yet, but unreasonable or not I am still stuck with figuring out how to make the first level set work.

    Leave a comment:


  • replied
    Originally posted by Santewi View Post
    I'm working on a quite large terrain as well, and my problem is that I can't reach the edges of the map because of the map bounds. Is that the same issue you're having?

    I don't know like anything about streaming levels, but aren't they used for streaming parts of the level once the player gets close to a certain area (for example)? I don't see how that would help with the map bounds getting in the way. Unless you're using the level streaming for performance reasons of course.
    The reason you cant reach the bounds is likely because your map is larger then the max size. UDK allows you to make your map bigger or place things out side the limit but they won't be accessible. Google "UDK max map size" and you'll find some great info on that I was actually looking at that my self yesterday.

    What you are thinking of as level streaming is actually called culling which is hiding thing like trees and other assets at a certain distance or out of the player line of sight to save system resources, this is a very important part of level optimization. Level streaming is loading levels or parts of levels into one persistent level allowing for seamless transitions. In my situation it would be helpful because the persistent level could store all the variables that need to transition from one map to another. However in a situation like you and I have were one level is so large you can't create seamless transitions level streaming losses its effectiveness you can't butt levels up against one another so you have to use teleports. This can cause an issue that ether demands to many resources and crashes the program or the level takes to long to load and you fall threw it. The main solution as you can see here is to split the level up into sections however if your map isn't designed for that you can actually see holes in your map, so you have to redesign the map to hide those sections until they are loaded using mountains. There maybe another way to hide things and if someone knows any other tips and tricks like that it would be exactly what I need to convince my boss.

    Hope that helps!

    Leave a comment:


  • replied
    Umm... the only thing i said wasnt working was the splitting up of the landscape and sending it to a streaming level. Hence why i said I keep the landscape in its own level and just split everything else up.

    I wasnt trying to offend or belittle, so please don't take it that way. But your exact words were "I tried using the save game system to no avail and I tried to figure out how to use the config system (way over my head)" So i took from that that you couldn't get it to work. I don't think it was an unfair assumption.

    "However having two maps that are at the max size with level streaming load time cause the engine to time out and crash." I don't mean to beat a dead horse but thats because you need to split up the streaming levels. The whole idea of streaming levels is that they "stream" in continuously, byt loading small chunks at a time. You don't stream in an entire 10km area... But surely, with your game industry experience you know that already.

    I'm not taking anything personal, was just offering some sensible advice, take it as you will.

    Leave a comment:


  • replied
    Here is the gem for saving the game http://udn.epicgames.com/Three/Devel...ameStates.html but that should be for the game programer in your team also if you don't want to break the map down and use level streaming try http://www.umbrasoftware.com/en/umbra-3/information/

    Leave a comment:


  • replied
    I'm working on a quite large terrain as well, and my problem is that I can't reach the edges of the map because of the map bounds. Is that the same issue you're having?

    I don't know like anything about streaming levels, but aren't they used for streaming parts of the level once the player gets close to a certain area (for example)? I don't see how that would help with the map bounds getting in the way. Unless you're using the level streaming for performance reasons of course.

    Leave a comment:


  • replied
    First sorry if my response offended you it wasn't my intention. Second I know how to use level streaming and optimization I am not a complete rookie I have spent the last 4 years leaning game development including the udk and received a bachelors in game software development.

    I agree you gave me a theory one in which you said wasn't working for you, hence a good starting place but not a whole lot of actionable intelligence. I can't just go to the head of a project and say hey someone on a form said we should do this to our game and expect him not to laugh, I need to give him a WORKING plan. I agree your idea isn't a bad one. As a point of fact we can run the game on a system with 4 gigs of ram and an i4 processor with a integrated video card. However having two maps that are at the max size with level streaming load time cause the engine to time out and crash.

    I can use the save game system just fine also that wasn't the issue stated however using the save game system to save values across maps is a different story one no offense that I think you too don't understand or you would have answered my question with that. As for config files I know how to use config files just not in conjunction with udk to do more then key mapping.

    No offense to you but don't take this stuff personal its a game and its not even yours. I am not saying I don't agree with you but I have to work with what I am given, if you have any real game industry experience you would understand that.

    To everyone
    I know level streaming isn't the only way to pass information between levels, I once saw a save system that would save only the player state and load it instead of a fresh pawn. Unfortunately I can't find that tutorial anymore, so I am looking for someone that can explain that concept or help me with how we can take a mountainous map and split it after the fact without effecting what the player sees when streaming the levels. If this cannot be done can someone help me with a good technical reason that I can present to my boss and CEO of the company as to why this can't be done. I can't tell him what he can or cannot do without being able to back it up or I could lose my job please help.

    Leave a comment:


  • replied
    I don't know how that's not a lot to go off when i've told you how to get it done in theory. You need to split the world into streaming levels else no consumer is going to be able to run the game. You said the game crashes with 'only' two maps loaded, well im not surprised, seeing as they are as big as you can possibly make them.

    I suggest having a look through this http://udn.epicgames.com/Three/LevelStreamingHowTo.html

    If you want to easily keep player stats from level to level, streaming is the way to do it. But if you don't understand using the save game system or how to use config files then I would seriously consider taking a step back. Forgive me for sounding negative or cynical, but I'm just being realistic.

    Leave a comment:


  • replied
    Thank you for posting not a lot to go off of but It give me at least a place to start

    Leave a comment:


  • replied
    I'm currently working on creating a large exterior world myself, one that will nearly if not completely fill the 10kmx10km game world. I must say, expecting to load that entire piece in one go, covered in assets, lighting and whatever else is just a bit ridiculous. I'm curious what sort of PC this is being built on, and if you have ever tried building lighting using lightmass.

    Anyway, its quite easy to divide up the existing map and split areas into streaming levels. I am creating my exterior world in 16384x16384 squares like a map grid. Then any other more details areas like cities or underground areas are streamed in with streaming volumes at the minute. You won't have to redo anything except for copy and paste things into the new streaming level. Doing a straight ctrl+x and ctrl+v places it back in the exact same place, its just a case of copying it from the existing level to the new streaming level.

    If 'your boss' has used the landscape tool he should be able to select multiple sections of the terrain and send them to a new streaming level. Though i can't get this to work at all. It did work, now it doesn't.

    I have it setup like this. Persistent level which includes the atmosphere and weather and all global effects. That then controls what levels are streamed in and out (obviously). Then one map containing the entire landscape. Then all the other items that fill the 16384x16384 gid squares are in their own streaming level. How you stream them in is up to you however.

    Leave a comment:


  • started a topic How can I use level streaming with huge maps

    How can I use level streaming with huge maps

    Hello everyone;


    I am working with a team to create a huge game world, our first map is the largest size possible with the editor, we then put several dungeons into separate levels since there was no room left. Obviously changing levels resets the data of the player even though we have figured out how to have the player start change based on were the "Entrance" to a dungeon is. we are trying now to figure out how to have player data move with the player from one level to another, the obvious answer is level streaming but the maps are so big they crash the game with only two loaded. I asked my team leader and the games creator to divide up the map for level streaming but he is concerned because he thinks the player will see nothingness until the section is loaded.

    Long story short I have been tasked with figuring out how to make it so the player will move from one level to another keeping all their stats intact. I have considered swapping levels under the player but this seems disastrous. I tried using the save game system to no avail and I tried to figure out how to use the config system (way over my head) and I tried scouring the internet for over a month before making this post. I am getting desperate can anyone help me find a solution to this issue that doesn't required level streaming or help me figure out how I can do the streaming without tearing up or redoing weeks of my bosses work.

    Is this even possible in UDK if not can someone give me a good technical argument to bring to my boss.

    Thank you so much for any help in advance.
Working...
X