Devlog Update 151 + Alpha 15

Alpha 15 is now available for download! The full change log is at the end of this post.

Devlog

Oh hey look, in addition to the Paddleboats we also added a second type of boat ride for this update - the Bumper Boats!

As a player, when you think about a games performance the UI is probably not one of the first things that comes to mind… but the UI needs to be optimized for performance too!
In Parkitect, one of the biggest UI performance difficulties has always been in windows with long lists - and we got a bunch of those, like the savegame list, the guest overview, and of course the build windows.
The Deco window has always been particularly problematic since there are hundreds of objects to scroll trough already and it only got worse with additional modded content. We have improved list performance a couple of times already but it was clear that some more work needed to be done.

Previously we used Unitys out-of-the-box scroll views, which behind the scenes works like this:

As soon as the window got opened all the list entries were loaded. When scrolling they simply got moved around accordingly. For relatively short or simple lists this is good enough, but if you need to load a bunch of stuff this can take a while and cause a noticeable lag spike.
And if the user doesn’t scroll all of that loading was for nothing!

We changed the lists to work like this instead:

Now, only enough list entries to cover the visible area of the scroll view are loaded. When scrolling, entries that leave the visible area get shifted to the other end of the list and their content gets replaced with whatever is supposed to be there.

For the user there’s no visible difference, but this is so much faster. And most importantly, it always takes the same amount of time to load no matter how many list entries there are, so we can add more stuff now without having to worry about this again :)

Here are some performance comparisons (bar length = loading time):

Changelog

- added Paddleboats
- added Bumper Boats
- added Western props, brazier, fire jet, jumping fountains, umbrellas, glass roofs
- added option for building ride blueprints without scenery
- added Eastern Highlands demo park
- added option for rides to wait for “any load, but not empty”
- added ride stats when sharing blueprint to Workshop and allowed editing description
- updated Steel Coaster cars
- improved lighting slightly
- improved water
- improved performance during rain
- significantly improved performance of Deco window (and others) opening/closing/minimizing/maximizing
- fixed vandalism state being saved into blueprints
- fixed not being able to lower Inverted Dark Ride velocity below 10km/h
- fixed missing supports on Miniature Railway
- fixed ride income graphs
- fixed not being able to build inside the scenario editor if money is set to 0
- fixed research cost not matching the allocated budget
- fixed tunnel rendering issues on Mac and Linux
- fixed edge scrolling not working properly on Linux
- fixes a case where terrain would be invisible on some systems
- fixed water not looking right in blueprint renders
- fixed fountain water flickering during rain
- fixed shop entries in overview window sometimes showing wrong information when changing sort order