Virtual Environment Frame Controller for Lag Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing virtual environment systems face challenges in maintaining a consistent frame rate, leading to lag and loss of synchronization, especially when dealing with complex scenes and varying user interactions, which negatively impacts the user experience.

Innovation Solution

The method involves dynamically adjusting the number and priority of objects in the virtual environment output based on client capabilities, using a frame controller module to modify the frame rate and object rendering, prioritizing critical elements and user-specific preferences, and distributing rendering tasks to optimize performance across multiple clients.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Manufacturing precision

If the virtual environment renders all objects at full detail to maintain visual quality, then the rendering complexity increases, but the frame rate drops below the target rate causing lag and desynchronization

Engineering Contradiction:
Improverendering qualityVSAvoidframe rate
Core Design Contradiction:
Manufacturing precisionVSProductivity

Solution Approach 1:

The system applies different rendering qualities to different objects based on their priority and relevance to the user. High-priority objects (e.g., avatars, interactive elements) are rendered at full detail, while low-priority objects (e.g., background elements, distant objects) are rendered at reduced quality or omitted entirely. This selective approach maintains visual quality for critical elements while reducing overall rendering complexity to achieve the target frame rate.

Inventive Principle:
Principle #3Local quality

2Loss of information

If the virtual environment includes all virtual objects in the output to maintain completeness of the scene, then the data transmission volume increases, but the client device cannot process frames quickly enough causing loss of synchronization

Engineering Contradiction:
Improvescene completenessVSAvoidsynchronization delay
Core Design Contradiction:
Loss of informationVSLoss of time

Solution Approach 1:

The system extracts and transmits only the essential objects and data needed for the current frame, excluding non-critical objects that can be inferred or are less important to the user experience. By selectively including only necessary objects in the output data, the transmission volume and processing requirements are reduced, enabling the client to keep up with the frame rate and maintain synchronization with the server.

Inventive Principle:
Principle #2Taking out (Extraction)

3Productivity

If the system maintains a high target frame rate for smooth user experience, then the rendering load on client devices increases, but devices with limited capabilities cannot achieve the target rate

Engineering Contradiction:
Improveframe rateVSAvoidclient processing requirements
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system dynamically adjusts rendering parameters such as object detail level, texture resolution, and number of rendered objects based on the client device's capabilities and current performance metrics. By changing these parameters adaptively, the system can maintain the target frame rate on high-end devices while providing acceptable performance on less capable devices, ensuring broad compatibility without compromising the user experience on powerful systems.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS9007362B2Adaptable generation of virtual environment frames
Publication Date: 2015.04.14 AVATAR GAMING INNOVATIONS LLC
  • US9007362B2 patent drawing
  • US9007362B2 patent drawing
  • US9007362B2 patent drawing

AI summary

A virtual environment in generated in a server where at least one object representative of an entity interacts with other objects or attributes of the environment. A desired frame rate for rendering the virtual environment is identified, and compared to a maximum achievable frame rate at a client device. If the maximum achievable frame rate is slower than the desired frame rate, the number of objects displayed within the virtual environment is modified, in accordance with one or more rule sets, until the maximum achievable frame rate is at or near the desired frame rate. In addition, a server may provide and synchronize output for clients participating in the virtual environment using different target frame rates.