Hi all, I'm sorry to post this thread on Triggers, but I have no clue about where is the proper section.
Nowadays I'm making an arcade supports free camera rotation(I've activated 'Camera Set Mouse Rotates' action). What makes me annoying is the framerate depends on camera rotation. There're angles that makes a high framerate, but that angle's inverse drops a number of framerate. Please check those screenshots.
Almost dropped by 20...
just 7, but that's annoying enough.
I've checked the trigger debugger assuming the overhead was problem, but that wasn't. I've tried to set Far clip as less as possible.None of these worked. Does anyone have the solution about this, or experienced this situation? Thanks.
I find that pre-loading most of the objects tends to work best, in any map with a more intensive camera angle I tend to have it all revealed at start instead of having fog or such where the character needs to load as it approaches. Not entirely sure why but it greatly reduces the frame-rate drops in my testing
But you can see, that there's no big differences between high and low screenshots, It seems they(high and low screenshots) render objects almost equally. Those difference is just the camera roll angle.
This is a graphic optimization problem. Even though the camera is practically the same visually, behind the scene one configuration might be a lot more resource intensive to render than another. For example it might have to render more geometry, or have more near geometry loaded due to different terrain cells being loaded. Nothing says it is even GPU related and it might be down to the CPU taking more time to process all the graphic data to send to the GPU.
A way to improve such performance could be to hide all actors that are not directly visible. This could be done with a bulk actor order action and separating the map into regions where players can only see what is in nearby regions as opposed to everything all the time.
RTS games like SC2 are not optimized from such camera angles. FPS and TPS are optimized for such angles. Such optimizations could include pre-ordering logic based on X/Y for all geometry (reverse painter's algorithm) so that it renders what is closest first and so can skip rendering geometry behind using Z culling. In RTS games ordering geometry is generally useless since the more top down view means that few objects will ever overlap depth wise. In FPS and TPS games this is a big optimization since it is possible hundreds of objects (eg a town, or forest) might be in front of each other.