Distributed Physics Simulation for Virtual Environments

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Simulating large and complex virtual environments with physics simulation of rigid body dynamics becomes computationally expensive and requires robust server resources, leading to increased load and perceived lag time.

Innovation Solution

A system that distributes physics simulation across multiple client computing devices, where a server assigns and tracks virtual objects for simulation, utilizing a physics simulation engine to calculate object states and properties, and periodically updates simulation data between clients and the server.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If physics simulation is performed on a single server for large virtual environments, then simulation accuracy is maintained, but server computational load increases and lag time increases

Engineering Contradiction:
Improvesimulation accuracyVSAvoidserver processing capacity
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent divides the physics simulation workload into segments by assigning individual virtual objects or groups of objects to different client devices. Each client device independently simulates physics for its assigned objects, transforming the monolithic server-based simulation into a distributed segmented approach that reduces server load while maintaining simulation accuracy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The server acts as an intermediary that manages object assignment between clients and virtual objects. It receives simulation requests from clients, determines which objects should be simulated locally versus server-side, and coordinates the distribution of simulation tasks across multiple client devices, thereby reducing server computational burden.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If more virtual objects are simulated on the server, then virtual environment complexity increases, but server resources are overextended

Engineering Contradiction:
Improvevirtual environment complexityVSAvoidserver resource consumption
Core Design Contradiction:
Adaptability or versatilityVSUse of energy by stationary object

Solution Approach 1:

Client devices perform self-service by independently executing physics simulations for assigned virtual objects using their own processing resources. This eliminates the need for the server to allocate and manage simulation resources for all objects, allowing the server to support more complex virtual environments without proportionally increasing server resource consumption.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent transitions from a single-server centralized simulation model to a distributed client-based model, adding the dimension of client device participation. This dimensional shift allows the system to handle increased virtual environment complexity by leveraging the collective computing power of multiple clients rather than overloading a single server.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Productivity

If physics simulation is distributed to client devices, then server load decreases, but system complexity increases

Engineering Contradiction:
Improveserver processing capacityVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The server implements multi-functionality by handling both traditional server-side simulation tasks and the coordination of client-based simulation. It manages object assignment, receives simulation results from clients, and maintains synchronization across the distributed system. This universal approach allows the server to oversee complex distributed architecture while maintaining centralized control and simplifying client implementations.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Data Source

PatentUS8832568B2System and methods for managing distributed physics simulation of objects in a virtual environment
Publication Date: 2014.09.09 ROBLOX CORP
  • US8832568B2 patent drawing
  • US8832568B2 patent drawing
  • US8832568B2 patent drawing

AI summary

A computerized server managing a Virtual Environment (VE) has a network port for communicating with remote computerized appliances, a plurality of virtually-defined rigid objects in the VE, including one or more avatars representing persons in the VE, a physics simulation engine executing from a machine-readable medium, for calculating object states and properties, including motion of virtually-defined rigid objects, and a mechanism for assigning and tracking identification of remote computerized appliances connected via the network port, each remote appliance capable of physics simulation. The server responds to signals from the remote computerized appliances to assign individual ones of the virtually-defined rigid objects to individual ones of the remote computerized appliances for physics simulation, and the server simulates all virtually-defined objects in the VE that are not assigned to at least one of the remote computerized appliances.