Blog

Draw calls & Base pass reduction

See how we reduced draw calls from 1900 to 1300 and base pass from 10 ms to 9 ms in our new successful optimization story.

Case: Brigada Games ported the game, which was originally developed for PC/Console, to Switch, which allowed a developer and a publisher to tap into a new mobile games audience.

The optimization work was conducted on the Switch platform.

Our goal was to reduce CPU time and draw calls - we achieved this by removing materials on LoD and setting new screen sizes.

Maximizing screen sizes for LoD and minimizing Draw calls near the camera were the most tough technical challenges of this process.

Our team implemented no changes to this project. The work was carried out using Standard engine tools and third-party 3D modeling packages.

We used indicators of the Stat Unit GPU in the gameplay, as well as Render Doc draw calls timings to evaluate the success of our optimization.

Thanks to our optimization, players have observed enhanced gaming experiences - especially in situations involving level movement and overall frame consistency.

For testing and debugging, QA was tasked with providing a video with repeatable gameplay and Stat Unit/FPS. Furthermore, RenderDoc captures were checked to confirm timings.

This optimization at first glance may seem minor but it can yield significant performance gains when applied to multiple objects. If we look at the performance benefit for an individual object, it is quite small (1-3 draw calls). However, when you have hundreds of objects in a scene, these optimizations add up to a significant improvement in performance.