Improve dirty grid rendering performance.#20055
Conversation
|
Is it okay if I test this out? |
ofc |
Gymnasiast
left a comment
There was a problem hiding this comment.
Tested with Blackpool Pleasure Beach, using non-optimised builds.
Multithreading off:
develop: 8 FPS
PR: 10-11 FPS
Multithreading on:
develop: 16-17 FPS
PR: 16-17 FPS
Didn’t notice any new bugs, looks like a nice improvement 👍
Could you try a build with all optimizations? |
|
With optimisations (again BPB at 2560 × 1440): Without multithreading: With multithreading: |
|
Looks like it's worthy of a changelog entry |
Thanks, we are almost back to 40 FPS (vanilla) at 2k so that's not bad I guess. Would still feel a lot better at 60+ or even 120 when one owns a high refresh rate monitor 👀 |
|
Awe man i remember working for ages to work out this issue in openloco but that was to fix z fighting. I tried it out in openrct2 but as it didn't fix z fighting i didn't proceed any further with porting it. |
- Feature: [#18713] Block brakes have speed control and brakes slower than adjacent block brakes copy block brake speed when block brake open. - Feature: [#19276] Add Powered Lifthill to Giga Coaster. - Feature: [#19305] Add new Reversed Trains ride setting to run trains backwards, granting a bonus to ride ratings. - Feature: [#19305] [Plugin] Add “Car.isReversed” to allow individual ride vehicles to run backwards. - Feature: [#19446] Add new color options to color dropdown. - Feature: [#19547] Add large sloped turns to hybrid coaster and single rail coaster. - Feature: [#19930] Add plugin APIs for research. - Feature: [OpenMusic#25] Added Prehistoric ride music style. - Feature: [OpenMusic#26] Fairground Organ style 2 with new recordings from Herman's 35er Voigt (Previously known as Bressingham Voigt). - Feature: [OpenMusic#28] Add Ragtime style 2 ride music. - Improved: [#17739] Raise water and land height limits to 254 units/182m/600ft. - Improved: [#18490] Reduce guests walking through trains on level crossing next to station. - Improved: [#18996] When marketing campaigns are disabled, disable the Marketing tab in the Finances window. - Improved: [#19764] Miscellaneous scenery tab now grouped next to the all-scenery tab. - Improved: [#19830] “Highlight path issues” will now hide wall elements. - Improved: [#19905] Add prompt before resetting shortcut keys. - Improved: [#19952] Add colour preset to Spiral Slide using the new colour options. - Improved: [#19953] Add keyboard shortcut to Keyboard Shortcuts window. - Improved: [#20055] Performance improvement for the software renderer. - Change: [OpenSFX#17] Update Hybrid RC lifthill loop. - Fix: [#12598] Number of holes is not set correctly when saving track designs. - Fix: [#13130] Android always defaulting to UK locale for language, currency and temperature. - Fix: [#13397] Ride simulation causes strange station behaviour and makes the ride unusable in some cases. - Fix: [#16791] Rotodrop top piece replicates when walls are placed around it and clearance checks are disabled (original bug). - Fix: [#18583] Land dropdown is incorrect if there are surface entry index holes. - Fix: [#18895] Responding mechanic blocked at level crossing. - Fix: [#19231] Crash due to null pointer to previously deleted banner in tile copy/paste functionality. - Fix: [#19296] Crash due to a race condition for parallel object loading. - Fix: [#19733] Favorite ride of X guests integer overflow. - Fix: [#19756] Crash with title sequences containing no commands. - Fix: [#19767] No message when path is not connected to ride exit and is therefore unreachable for mechanics. - Fix: [#19800] Crash when displaying station stats with more than 62 stations. - Fix: [#19801] The in-game load/save window cannot be resized anymore. - Fix: [#19854] Looping Coaster trains clipping through steep quarter turns down. - Fix: [#19858] Issue drawing simulate flag icon on alternate colour palettes. - Fix: [#19901] Random shop colours never assigning last colour. - Fix: [#19911] Guests stuck at certain railway crossings. - Fix: [#19924] Destructible cheat does not allow partial ride modification. - Fix: [#19950] Mine train block brake supports drawn incorrectly. - Fix: [#19955] Mine Train Roller Coaster has incorrect supports on the sloped left small turn (original bug). - Fix: [#19987] [Plugin] ‘SetCheatAction’ has wrong ID in plugin API. - Fix: [#20016] The group box for small scenery details in the Tile Inspector window has unused empty space. - Fix: [#20018] Shops not calculating up-keep cost. - Fix: [#20033] Asset packs cannot reference game data. - Fix: [#20104] [Plugin] Some network APIs use player index and group index. - Fix: [#20099] Some scrollbar is glitched or have incorrect size when open window for the first time - Fix: [#20134] Grass length being updated for tiles in the void, causing unneccesary drawing operations.
Release v0.4.5 - Feature: [OpenRCT2#18713] Block brakes have speed control and brakes slower than adjacent block brakes copy block brake speed when block brake open. - Feature: [OpenRCT2#19276] Add Powered Lifthill to Giga Coaster. - Feature: [OpenRCT2#19305] Add new Reversed Trains ride setting to run trains backwards, granting a bonus to ride ratings. - Feature: [OpenRCT2#19305] [Plugin] Add “Car.isReversed” to allow individual ride vehicles to run backwards. - Feature: [OpenRCT2#19446] Add new color options to color dropdown. - Feature: [OpenRCT2#19547] Add large sloped turns to hybrid coaster and single rail coaster. - Feature: [OpenRCT2#19930] Add plugin APIs for research. - Feature: [OpenMusic#25] Added Prehistoric ride music style. - Feature: [OpenMusic#26] Fairground Organ style 2 with new recordings from Herman's 35er Voigt (Previously known as Bressingham Voigt). - Feature: [OpenMusic#28] Add Ragtime style 2 ride music. - Improved: [OpenRCT2#17739] Raise water and land height limits to 254 units/182m/600ft. - Improved: [OpenRCT2#18490] Reduce guests walking through trains on level crossing next to station. - Improved: [OpenRCT2#18996] When marketing campaigns are disabled, disable the Marketing tab in the Finances window. - Improved: [OpenRCT2#19764] Miscellaneous scenery tab now grouped next to the all-scenery tab. - Improved: [OpenRCT2#19830] “Highlight path issues” will now hide wall elements. - Improved: [OpenRCT2#19905] Add prompt before resetting shortcut keys. - Improved: [OpenRCT2#19952] Add colour preset to Spiral Slide using the new colour options. - Improved: [OpenRCT2#19953] Add keyboard shortcut to Keyboard Shortcuts window. - Improved: [OpenRCT2#20055] Performance improvement for the software renderer. - Change: [OpenSFX#17] Update Hybrid RC lifthill loop. - Fix: [OpenRCT2#12598] Number of holes is not set correctly when saving track designs. - Fix: [OpenRCT2#13130] Android always defaulting to UK locale for language, currency and temperature. - Fix: [OpenRCT2#13397] Ride simulation causes strange station behaviour and makes the ride unusable in some cases. - Fix: [OpenRCT2#16791] Rotodrop top piece replicates when walls are placed around it and clearance checks are disabled (original bug). - Fix: [OpenRCT2#18583] Land dropdown is incorrect if there are surface entry index holes. - Fix: [OpenRCT2#18895] Responding mechanic blocked at level crossing. - Fix: [OpenRCT2#19231] Crash due to null pointer to previously deleted banner in tile copy/paste functionality. - Fix: [OpenRCT2#19296] Crash due to a race condition for parallel object loading. - Fix: [OpenRCT2#19733] Favorite ride of X guests integer overflow. - Fix: [OpenRCT2#19756] Crash with title sequences containing no commands. - Fix: [OpenRCT2#19767] No message when path is not connected to ride exit and is therefore unreachable for mechanics. - Fix: [OpenRCT2#19800] Crash when displaying station stats with more than 62 stations. - Fix: [OpenRCT2#19801] The in-game load/save window cannot be resized anymore. - Fix: [OpenRCT2#19854] Looping Coaster trains clipping through steep quarter turns down. - Fix: [OpenRCT2#19858] Issue drawing simulate flag icon on alternate colour palettes. - Fix: [OpenRCT2#19901] Random shop colours never assigning last colour. - Fix: [OpenRCT2#19911] Guests stuck at certain railway crossings. - Fix: [OpenRCT2#19924] Destructible cheat does not allow partial ride modification. - Fix: [OpenRCT2#19950] Mine train block brake supports drawn incorrectly. - Fix: [OpenRCT2#19955] Mine Train Roller Coaster has incorrect supports on the sloped left small turn (original bug). - Fix: [OpenRCT2#19987] [Plugin] ‘SetCheatAction’ has wrong ID in plugin API. - Fix: [OpenRCT2#20016] The group box for small scenery details in the Tile Inspector window has unused empty space. - Fix: [OpenRCT2#20018] Shops not calculating up-keep cost. - Fix: [OpenRCT2#20033] Asset packs cannot reference game data. - Fix: [OpenRCT2#20104] [Plugin] Some network APIs use player index and group index. - Fix: [OpenRCT2#20099] Some scrollbar is glitched or have incorrect size when open window for the first time - Fix: [OpenRCT2#20134] Grass length being updated for tiles in the void, causing unneccesary drawing operations.
Software (HW), Multi-threading off (1080p):
-- develop: 50~ FPS
-- PR: 80~ FPS
-- develop: 28~ FPS
-- PR: 45~ FPS
Software (HW), Multi-threading on (1080p):
-- develop: 145~ FPS
-- PR: 155~ FPS
-- develop: 90~ FPS
-- PR: 95~ FPS
Clearly some gains with multi-threading off, this is also something OpenLoco apparently does.