Bringing A Large-Scale World To Life On Mobile

Bringing A Large-Scale World To Life On Mobile

Stage 3 - Mobile Track - Confex Level 1
-All-MobileTech & Coding

Information

Developing large-scale maps for mobile devices can present a host of technical challenges, especially when being done by a small team. How to manage extensive vertex and texture budget, what advanced rendering techniques to use when targeting hardware as low as a 150 USD mobile device with goals of delivering at least 30 FPS across all devices, and how to aid content authors via tech to speed up the iteration process. These were some of the concerns of the team. In this talk, we'll discuss our learnings regarding the technical challenges that we encountered and the solutions we applied over a series of maps that we created over years. It'll cover the systems that we created for painless authoring, fast iterations and an optimised runtime (memory/CPU/GPU). We will also discuss some future possibilities, as well as how these methods can be moulded for other use-cases. Being extremely constrained in our resources, we needed to be very mindful regarding our prioritisation. This could not be done if the artists and level designers are focused on mundane and repetitive tasks such as collider setups, LOD generation, markup etc. We'll be sharing the kinds of tools we made to facilitate a relatively effortless large-map creation process that could be applied to a whole variety of genres. We'll go over potential bottlenecks and gotchas to avoid when it comes to low end mobile CPUs/GPUs, along with some tips and tricks to minimise rendering costs, memory usage, asset-loading hitches and GC problems, finding a sweet-spot between performance and visual fidelity.
Target Audiences
Platform and Tool Developers
Experience Level
Intermediate
Key Take Aways
- Approaches for solving runtime performance problems - Principals for creating workflows that enable faster authoring and iterations - Do's and dont's when targeting lower end mobile devices
Session Type
Talk