Getting Faster and Leaner on Mobile: Optimizing Roblox with Vulkan

Roblox runs on hundreds and hundreds of Android devices, and it’s vital for us to be capable to carry out correct performance where that you doubtlessly can specialize in. Rendering performance in say is difficult — we target many various hardware architectures, many various kinds of devices on the energy/performance curve, and naturally many variations of wildly various drivers.

In 2018, we’ve launched our Vulkan renderer and since then it has been steadily rising in market share when put next to our OpenGL renderer, with ~40% of our Android userbase using Vulkan as of late.

After the preliminary launch, with the rising reputation of the Vulkan backend we needed to invest lots of time in analyzing performance and bettering it. Doing this required lots of investigation and experimentation — with minimal performance-focused optimization or code on hand on the time, we needed to have a study out various approaches to each and each say anguish and ranking what works easiest for us.

At Reboot Fabricate Crimson 2019, we gave a combined focus on with ARM to quilt the performance optimization arena from two various angles:

  • There’s now a rising sequence of performance-focused sample Vulkan code that used to be developed by ARM and donated to Khronos, which it’s possible you’ll well uncover about here: Joe Rozek from ARM talked about the usual structure of the samples and the framework faded.
  • To support other developers optimize Vulkan code and affords some insights into the concerns and solutions we encountered at Roblox, I talked a pair of number of concrete concerns we encountered while optimizing our renderer, tradeoffs we needed to peer and solutions we implemented.
frameborder=”0″ enable=”accelerometer; autoplay; encrypted-media; gyroscope; image-in-image” allowfullscreen>

The video for the controversy is posted on YouTube (, and it’s possible you’ll well download the slides here (

Neither Roblox Company nor this weblog endorses or helps any company or carrier. Moreover, no ensures or promises are made relating to the accuracy, reliability or completeness of the data contained in this weblog.

This weblog post used to be on the foundation published on the Roblox Tech Blog.

The post Getting Faster and Leaner on Cell: Optimizing Roblox with Vulkan regarded first on Roblox Blog.

Leave a Comment