I have a 4x4km landscape that I am trying to use with world composition for streaming. I have it broken down to a bunch of 505x505 tiles and dropped into the world comp. It made the terrain just fine. But for whatever reason, my framerate goes from around 100 to 60-70 when simply moving. Not rotating, but walking forward. And it goes back to 100 when standing still. There is only a landscape with NO material in the scene. And I am testing it with the character from the first-person template but with gun and shooting logic removed.
Please, someone. I need help with this. I can’t continue development until this is solved. I can’t even get to adding foliage since it drops framerates as low as 20-30 with just some basic foliage and this broken landscape.
Just guessing here, but are you loading these landscape layers with level streaming? If all the tiles are located in the persistent level they are all loaded, and in this case it means that the engine has to assess all tiles when you move, instead of one big one. Enable level streaming, and add level streaming volumes, then move the corresponding tile into the corresponding level.
I already said the engine does it automatically when using the “World Composition” tool built in. You just feed it tiles and it assembles it into a streamed level with everything separated already. I’m not putting things into one single level because why wouldn’t I just make it one single landscape actor then? That’s what I have been doing for years already. I am generating tiles and giving the game the tiles for it to stream in. I have a whole folder in the content browser full of 49 separate map files, one for each map tile. I didn’t make them, the engine its self did when I used the world comp tool.
How many components per landscape tile?
Each component has a render-thread CPU processing cost. I have a 4x4km map where I used 1009x1009, 63x63 comp. Runs fine with a 5Km streaming distance.
In the “Levels” panel each landscape tile should be represented by a level and be a child of the persistent level (indented).
In the “World Outliner” each level should have a level bounds and a landscape proxy. I’ve organized mine.
If everything is setup correctly the only things I can think of are world origin shifting (rebasing) or hardware performance. For comparison I’m running on an AMD FX 8350, 16GB RAM, AMD RX 580 GPU (8GB) and all is good.
Same problem, Can’t find reason.
I did profiling and on high spike showing high ms on garbage collection. And i tried all tweaking with garbage collection in project setting, even i set panding kill to 30min for test, and still in profiling show garbage collection ms high on level streaming.