CONTACT
  • SERVICES
  • INDUSTRIES
  • WORK
  • COMPANY
  • BLOG
  • CONTACT
  • SERVICES
  • INDUSTRIES
  • WORK
  • COMPANY
  • BLOG
  • CONTACT
  • Services Overview
    Web Development
    Android Development
    iOS Development
    ML Development
  • VR/AR Development
    3D Art Unity
    UI/UX Design
    ﹂UX Audit
    ﹂Branding Design
    ﹂Motion Design
    ﹂Crossplatform Design and Development
    ﹂Webflow Design
    ﹂Digital Product Design
    DevOps Services
    QA Services
  • Dedicated Team
    Dedicated Team Calculator
    Salesforce Development
    Discovery Phase
  • Industries Overview
    Healthcare
    Travel
  • Online Scheduling and Booking
    eLearning
    LMS
  • Sports and Fitness
    Fintech
  • Case Studies
  • Design Portfolio
  • Testimonials
  • Onix Story
    Referral Program
  • Careers
  • About Ukraine
  • Travel
    Fintech
  • VR/AR
    Education
  • ML
    Sports & Fitness
  1. Onix
  2. Blog
  3. VR/AR
  4. Navigating Mobile VR Graphics: Insights From Our Project
Background

Navigating Mobile VR Graphics: Insights From Our Project

executor photo

Nikola Makarevych

CMTO at Onix

Anastasiia Bitkina

Anastasiia Bitkina

Content Manager

Jul 17,2024

6 min read

807 views

Share

 how the Impostor tool revolutionizes VR on mobile

Mobile device performance continues to grow each year, and to the delight of users, VR has become faster, more mobile, and more accessible. Despite this, optimizing mobile device graphics remains a challenging application development area.

 

This issue is particularly evident in mobile VR devices. Compared to mobile phones, we must ensure twice the number of frames per second (FPS) for two separate screens, whose resolution continues to increase.

 

During the InnerVR project, our team faced a technical challenge: showcasing high-quality open locations. This required rendering detailed environments and ensuring smooth performance on mobile devices.

 

In this article, we will take you through our experience of overcoming this challenge.

 

We:

 

  • reveal the techniques we used
  • introduce the Impostor tool we developed to simplify distant objects using image-based representations.

 

Well, let's get to the point.

vr app development

​​InnerVR meditation game developed by the Onix team

Table of contents
  • Current Challenges in Mobile VR Graphics Optimization

  • How Onix Optimized VR Graphics for Mobile Devices: Insights from Our Project

  • How the Impostor Tool Boosted Our VR Development

  • Summing Up

  • FAQ

Current Challenges in Mobile VR Graphics Optimization

To ensure we're all on the same page, let's first explore the current challenges in optimizing graphics for mobile VR. This will give us a clear understanding of what we're dealing with.

 

High FPS requirement for VR

Mobile VR devices must render content at a much higher frame rate than typical mobile applications. For VR to be smooth and immersive, it requires at least 90 FPS, compared to the 30-60 FPS standard for mobile games.

 

Additionally, VR must render this high frame rate on two separate screens, one for each eye, which doubles the GPU's workload. This increased demand is further compounded by the steadily rising resolution of VR displays, which now often surpasses 2K per eye.

 

Performance constraints

Mobile VR devices have limited processing power compared to high-end PCs. Balancing graphical fidelity with maintaining a consistent frame rate is essential for preventing motion sickness and ensuring a smooth VR experience.

 

Texture and asset compression

Mobile devices have limited storage and memory capacities. Compressing textures and other assets without sacrificing visual quality is crucial for optimizing performance and minimizing load times.

 

Rising user expectations

As VR technology becomes more widespread, users expect increasingly higher levels of graphical fidelity. This growth drives the need for more sophisticated and visually appealing VR experiences, putting additional pressure on developers to optimize their applications effectively.

 

vr app development

 

How Onix Optimized VR Graphics for Mobile Devices: Insights from Our Project

Recently, the Onix team worked on the InnerVR project. This is a soothing meditation and relaxation VR game tailored for Oculus Quest 2, created to support users in leading a more mindful life.

 

During the development of InnerVR, our team faced a technical challenge: open location quality requirements. We needed to showcase expansive, open locations with the highest possible visual fidelity.

VR Graphics for Mobile Devices

The camera's field of view (in red), blocked by mountains, viewed from above.

 

Creating large, open environments for VR presents unique challenges. Typically, developers use visual blocks and large environmental elements, such as mountains and buildings, to limit the number of 3D models in view and maintain performance.

 

However, for the InnerVR project, we needed to ensure that users could view extensive landscapes and distant objects with high fidelity without compromising performance.

 

We knew that the ability to walk around the locations would be limited to a small area, and this condition allowed us to develop an optimization tool for levels – the Impostor.

 

This experience will be invaluable for teams aiming to develop a VR meditation apps, ensuring high-quality visuals without sacrificing performance for a serene and immersive user experience.

 

Read also How to Hire Developers for VR and AR Projects

 

The idea behind the Impostor

The idea behind our optimization tool, the Impostor, is straightforward:

 

Suppose the user cannot get close to an object in the application. In that case, there is visually no significant difference between a volumetric 3D model and an image of that 3D model on a plane. 

 

This technique reduces the number of polygons that need to be rendered, significantly improving performance.

idea behind the Impostor

An example of the Impostor's output

 

Similar technologies have long been used in games as part of Level of Detail (LOD) systems. The lowest LOD level often represents a 3D model as a simple image used for objects at great distances without discernible details. 

 

In VR, however, our approach was to use this level of detail more extensively to handle the increased demands of rendering high-resolution environments.

idea behind the Impostor

An example of LOD versions of a single object: the higher the LOD, the lower the detail.

 

Implementation process

In our case, the lowest level of detail was the main player.

 

To gain full control over the model's angle, lighting, and materials, we created a tool that is highly user-friendly for Level designers and automates many routine tasks:

 

1. Initially,  the designer assembles the level from game assets without worrying about optimization.

 

2. Knowing where the user can move, the designer selects models and objects to replace with impostors.

 

By selecting one or several models and pressing a single button, the designer can replace millions of polygons with two polygons and an image into which the model with all lighting and material effects is instantly baked.

 

Below you can see an example of the Impostor's output in our project, InnerVR. On the left are the real objects, and on the right are the objects after the Impostor's processing.

Impostor's output

An example of the Impostor's output 

 

3. The number of textures in a project also affects performance. Since device memory is limited, we devised an impostor packer.

 

By selecting several impostors, the plugin combines them into a single image and replaces the old planes with new ones, mapped correctly. Designers can choose the final texture resolution and adjust settings until the desired result is achieved, further optimizing memory usage.

Impostor's output An example of a packed texture atlas

 

Here is a quick overview of how to use Impostor: 

 

 

How the Impostor Tool Boosted Our VR Development

 

  • Improved performance

It reduces the number of polygons rendered, ensuring smoother gameplay and higher frame rates in VR.

 

  • Enhanced visual quality

Despite polygon reduction, it maintains realistic lighting, shadows, and materials for a visually rich experience.

 

  • User-friendly design

It simplifies the process for designers, allowing them to focus on creativity without worrying about optimization.

 

  • Flexibility

Changes are reversible, preserving original models for easy editing and adjustments.

 

  • Optimized texture management

It consolidates textures, optimizing memory usage and enhancing overall performance.

 

  • Resource efficiency

Lightening the computational load frees up resources for more innovative features and effects.

 

  • Supports detailed environments

Enables the creation of expansive, detailed environments on mobile platforms without sacrificing performance.

 

Summing Up

The Impostor tool has been instrumental in optimizing our VR projects, enabling us to deliver high-quality, immersive experiences on mobile devices. Its ability to improve performance, enhance visual fidelity, and streamline the design process makes it an invaluable asset in our development toolkit.

 

Whether you need assistance optimizing your VR graphics for mobile devices or have any other  VR development needs, feel free to contact us!

 

Onix team

 

FAQ

 

How does the Impostor tool improve performance?

The Impostor tool reduces the number of polygons rendered by replacing complex 3D models with impostors (2D representations) for distant objects. This results in smoother gameplay and higher frame rates, which are crucial for immersive VR experiences.

 

Can the Impostor tool be applied to other types of applications beyond VR?

While primarily designed for VR optimization, the principles of the Impostor tool, such as reducing polygon counts and optimizing textures, can be adapted for various types of 3D applications where performance optimization is critical.

 

Can the Impostor tool maintain visual quality despite reducing polygon count?

The Impostor tool ensures that lighting, shadows, and material effects are accurately represented in the impostor images. This allows for realistic visuals without sacrificing performance.

 

How does the Impostor tool handle texture management?

The Impostor tool includes a feature called the Impostor Packer, which combines multiple impostors into a single texture. This optimization reduces memory usage and improves overall performance on mobile devices.

executor photo

Nikola Makarevych

CMTO at Onix

Metaverse development and integration, leveraging AR/VR solutions for business growth.

Anastasiia Bitkina

Anastasiia Bitkina

Content Manager

Table of contents
  • Current Challenges in Mobile VR Graphics Optimization

  • How Onix Optimized VR Graphics for Mobile Devices: Insights from Our Project

  • How the Impostor Tool Boosted Our VR Development

  • Summing Up

  • FAQ

miniBanner
Onix
form-block-background

Never miss a new blog post from us!

Join us now and get your FREE copy of "Software Development Cost Estimation"!

Your Name*
Work Email*
Company

This pricing guide is created to enhance transparency, empower you to make well-informed decisions, and alleviate any confusion associated with pricing. In this guide, you'll find:

01

Factors influencing pricing

02

Pricing by product

03

Pricing by engagement type

04

Price list for standard engagements

05

Customization options and pricing

call_to_action_bg

Tell us about your product idea and let the magic unfold.