Friday, 12 May 2017

Optimisation

The target performance characteristics of the scene are 1080p, Ultra settings and 33ms per frame. At points during the project we were exceeding 50ms per frame which was unacceptable. With some help from our tutor Mike and teammate Jake, I've improved things to a huge degree, even if things aren't exactly where they would be ideally.

First area of concern was overdraw. In two scenes we had a large number of double sided alpha textures stacked on top of each and in the overdraw visualisation it look like this:
Keep in mind that white doesn't mean ten overdraws - it's 10+ and in this particular scene this mean that maybe 15% of the screen was being overdrawn up to 17! times.

After some selectively removal of some of the more superfluous elements we ended up with this instead.


Whilst still not ideal, it definitely helped the frame rate.

Further optimisations included changing the way decals rendered and making sure the lighting complexity was consistently low as shown here:


And finally this menu was very helpful

Going slowly and methodically through these helped me isolate issues with some particles, excessive fog all of which improved our frame from the teens to high twenties.

No comments:

Post a Comment

Note: only a member of this blog may post a comment.