Developer Blog – VR is Mobile VR is All About Optimization

By | February 1, 2016

I’m working on a VR project! I learn stuff and share stuff, some of which is awesome!

It is not wrong to synonomize VR with mobile VR. Adoption rates for Android cell phones, obviously, greatly surpass that of dedicated VR hardware. Until the technologies merge completely, cell phones will always have greater market penetration. That’s why VR development is mobile VR development. And mobile VR development is all about optimization.

Building for VR, and mobile VR in particular, means ruthlessly optimizing your app/game. The reason is that the cell phone’s already (relatively) pitiful processing power is halved; the scene must be rendered twice, once for each eye. Samsung, purveyors of Samsung Gear VR, recommends limiting your game to 100 draw (set-pass) calls! Limiting a game to 100 set-pass calls is no mean feat. You’ll need to use every optimization strategy in the (this) book.

Optimization for mobile VR means:

  • LODs and Mipmaps
  • Low poly, low resolution
  • Object culling and object occlusion
  • Static batching/mesh baking
  • texture atlasing
  • lightmapping
  • And more…

The end user doesn’t understand technical limitations. They’ll never blame their precious cell phones. They’ll blame you, the developer, for any visual deficiencies. You’ll have to doubly impress viewers with an immersive experience in order to compensate for lack-luster (ie lack-specular, also lack-normal maps) graphics. Bottom line, optimization must inform every development choice from beginning to end.

With this particular project I’m beginning with a tropical island. The assumption is that given a much desired destination, players will be willing and active participants in the immersion. They’ll gloss over the visual limitations for a chance to spend a moment in the (virtual) sun.

To create the island I used, you guessed it, Terrain Toolkit. Unfortunately, I ran into problems immediately. When publishing to mobile the textures became overly pixelated. Optimization and optimal have a shared etymology. This level of pixelation isn’t acceptable, let alone optimal. In tomorrow’s post we’ll troubleshoot until we achieve optimal resolutions.


A Note from Admin:


I hope you found this content useful. If so, please like and subscribe and consider contributing to

so that I can continue to produce great #gamedev and #game art content while battling cancer!

Subscribe and get ahead with the latest tech recommendations, tricks, and tutorials!

Or subscribe to:
NCP on Twitch
NCP on YouTube
NCP on Twitter (warning: politics!)

WIP Sites:
learnindiedev.com Unlike Udemy, this site will feature live lessons and game jam learn-a-thons (exactly what it sounds like)! Featuring No-Code Video Game Development, the only video course to become a published text book!

openforcommissions.com Why be hard to find? Upload your portfolio, change your open/close status with a single tweet, get paid!

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.