Twitch: Optimizing Unreal Engine Apps with Mali Graphics Debugger

Everyone knows we in the Arm Mali team design graphics, video and display processors, targeting the fine line between high quality, immersive gaming and sufficient efficiency that you can still play for hours. If you’ve seen the report we released recently in collaboration with NewZoo, you’ll also know the growing capability of these processors play a big part in the huge growth of the mobile gaming industry. By optimizing games and applications for Mali-based SoCs, developers are able to tap into massive segments of the mobile market for everything from casual gaming to high fidelity mobile titles and VR amongst other awesome, emerging tech.

We could of course just send these products out into the world and leave it at that, but why stop there? High end mobile gaming might need some serious technology to support it, but without fantastic, compelling content there wouldn’t be people willing to spend US$46 Billion a year in playing it.* This is where you, the developer, comes in.

GameDev Tools

We want to make sure we’re doing everything we can to help you get your titles released on time and get them working at their absolute best. We’ve worked on developer tools, guides, SDKs and more for years now, but it’s only recently we’ve been able to work with some of the world’s biggest game engines to integrate these tools directly. One of our key tools that we’ve been working hard with over the past few months is the Mali Graphics Debugger (MGD) in order to make it as easy to use as possible. While it’s a great tool with any engine, you get the most from it if you use Unreal Engine or Unity to develop your games. In fact, Epic have kindly done some of the work for you in their Unreal Engine to give you MGD support in a few simple steps:

1) Select Mali Graphics Debugger from the Android menu in the Project Settings Window.

2) Point Unreal to the installation location for MGD.

3) Unreal will then build your application with MGD support.

To celebrate this collaboration with such an awesome ecosystem partner, and to show how easy it is to use, we did a Twitch live stream on Epic's channel.

In the Twitch broadcast our resident experts Jon Kirkham and Stephen Barton spoke about all of the Mali tools that are currently provided by Arm and the recommended flow that we use to debug and optimize our applications. They then moved into talking about some of the most used MGD features and how they can help you optimize your content. Items that they covered are:

How to check what your OpenGL ES state at any point in your application.

  • How to draw your scene and analyse the frame buffer after every draw call.
  • How to look at issues such as overdraw when you are fragment bound
  • How to look at which are the most expensive shaders in your scene for both vertex and fragment bound applications.

From there we moved into a live demo showing exactly how to add MGD support into your Unreal application and then how to use the MGD tool and all the features we’d discussed.  They finished up the stream with a small Q&A session of the questions that were asked during the presentation. Hopefully this will make the life of a game developer a little easier, so catch up with the Twitch broadcast here.