Can you tell me how many fps you get with Alien City Park ? http://steamcommunity.com/sharedfiles/filedetails/?id=808525601
I also noticed this. And for instance, my Sci-fi zone seems to be more laggy than any other part of my park. Also tried to close the park entirely and see, if FPS gets better. Not much... It also hints more towards your theory - there are some objects causing this.I managed to get 60 fps after deleting a few buildings. It suddenly jumped from 4fps to 60fps, quite odd. So I pressed CTRL-Z on the last building deletion and it went back to 4fps. It was only a minor building, so it seems there's a threshold, a number of lights or objects perhaps that if you exceed then your FPS suddenly dies. I suspect the box lights and lamps.... I'm not sure.I thought it would be a gradual improvement as I deleted buildings, but to see it jump suddenly from 4fps to 60, with most of the park still there was surprising. Worth investigating this further to find what the issue is.
Hey everyone,
I've grabbed this park and spotted what causes the massive slowdown. It's to do with having so many buildings and building pieces. The tech explanation is that we use a specific data structure (an AABB Tree) to query how building pieces "merge" with another (the building system in Planet Coaster swaps pieces out with others automatically so that things such as building corners join correctly. This level has approximately 131,000 entries in this structure, which is rather a lot! The game was attempting to balance this tree even if nothing has changed within it.
The good news is that this is a nice optimisation target, and with a very quick look I've been able to get the framerate much higher (~2.8fps on my machine here to ~60fps), the only caveat being that it slows down again while editing buildings. While interacting with anything else in the park though (scenery, coasters, flatrides etc.) it's much faster. I'll take a look next week and see if we can come at this from another angle and make editing snappier too.
Cheers
Andy
That is very interesting! But I am not completely sure if I read it correctly. So does the map have 131.000 individual objects in the Tree, or 131.000 buildings (which contain objects)? So having fewer buildings with more objects is better than having more buildings with less objects?
Hey everyone,
I've grabbed this park and spotted what causes the massive slowdown. It's to do with having so many buildings and building pieces. The tech explanation is that we use a specific data structure (an AABB Tree) to query how building pieces "merge" with another (the building system in Planet Coaster swaps pieces out with others automatically so that things such as building corners join correctly. This level has approximately 131,000 entries in this structure, which is rather a lot! The game was attempting to balance this tree even if nothing has changed within it.
The good news is that this is a nice optimisation target, and with a very quick look I've been able to get the framerate much higher (~2.8fps on my machine here to ~60fps), the only caveat being that it slows down again while editing buildings. While interacting with anything else in the park though (scenery, coasters, flatrides etc.) it's much faster. I'll take a look next week and see if we can come at this from another angle and make editing snappier too.
Cheers
Andy
I just checked the park, the think I selected everything and the total part count came out to a little over 60k.
Based on Andy's explanation I think what happens is that each part has multiple variants, somewhat invisible to us. So imagine the 4m wall has only one listing in your building parts list, but in reality there are four parts, one with no angles corners, one with a right angled corner, one with a left angled corner and one with both angled corners. The game decides which one of those internal parts it uses based on the presence or absence of adjacent parts so that corners look seamless. All this data, of which version to use, is kept in an internal tree, that in this case grew to over 130k entries.
Good news. Could this be the definitive solution to all the FPS problems people are getting in bigger parks?
Hmm I guess, but that doesn't explain how he could easily optimize that map (unless he opened in in their engine and use developer magic [haha]). Also, only walls have this property in the game right? Hmm, I think I am missing something here.
The game was attempting to balance this tree even if nothing has changed within it.
Well, Andy said this:
I take that to mean that the game was looping through the information in this tree, even though it doesn't need to because nothing changed. Adding an "If: editing building, then: recalculate; else: do nothing" statement is usually pretty easy to do.
Slasher might be right that it could help some parks with slow frame-rates, but maybe not as dramatic as this particular one. It could be that max2 is doing something different in the way he places the pieces that result in additional entries in the tree structure (just an uneducated guess).