3D API Redirection with Client-Side Shadow Windows for VDI Rendering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing VDI systems face challenges in achieving good 3D rendering performance and compatibility with modern graphics APIs while avoiding the high costs associated with deploying GPU hardware on each server system for large-scale deployments.

Innovation Solution

Implementing 3D API redirection by intercepting 3D API calls in a server-side VM and transmitting metadata to a client system for execution on client-side GPUs, leveraging existing client-side GPU hardware.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Power

If server-side GPUs are deployed to achieve 3D acceleration, then rendering performance is improved, but hardware cost increases

Engineering Contradiction:
Improverendering performanceVSAvoidGPU hardware quantity
Core Design Contradiction:
PowerVSQuantity of substance

Solution Approach 1:

Instead of redirecting 3D API calls from client to server (traditional approach), this patent inverts the approach by capturing 3D API calls on the server side and redirecting them to client-side GPUs for execution, then returning results to the server. This allows leveraging client-side GPU resources without requiring server-side GPU hardware.

Inventive Principle:
Principle #13The other way round (Inversion)

Solution Approach 2:

The patent introduces a shadow window mechanism as an intermediary between the server-side application and client-side GPU. The shadow window captures 3D API calls, transmits them to the client system, and returns results back to the server, enabling indirect communication and coordination between server and client GPU resources.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Quantity of substance

If CPU-based 3D rendering is used, then hardware cost is reduced, but rendering performance deteriorates

Engineering Contradiction:
ImproveGPU hardware quantityVSAvoidrendering performance
Core Design Contradiction:
Quantity of substanceVSPower

Solution Approach 1:

The shadow window acts as an intermediary that enables the server-side application to utilize client-side GPU resources. By capturing 3D API calls and redirecting them to the client system's GPU, the patent allows high-performance GPU rendering without requiring GPU hardware on the server side.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Quantity of substance

If client-side 3D API redirection is implemented, then GPU hardware cost is reduced, but system complexity increases

Engineering Contradiction:
ImproveGPU hardware quantityVSAvoidsystem complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The shadow window mechanism serves as an intermediary layer that manages the complexity of 3D API redirection. It captures 3D API calls on the server side, transmits them to the client system, executes them on client-side GPUs, and returns results to the server, thereby abstracting and managing the system complexity in a structured manner.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent creates a shadow window as a copy or mirror of the server-side application's 3D rendering context on the client side. This shadow window replicates the necessary 3D API call structure and state, allowing client-side GPU execution while maintaining compatibility with the server-side application's rendering requirements.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS12373227B23D API redirection for virtual desktop infrastructure using a client-side shadow window
Publication Date: 2025.07.29 OMNISSA LLC
  • US12373227B2 patent drawing
  • US12373227B2 patent drawing
  • US12373227B2 patent drawing

AI summary

Techniques for implementing 3DI API redirection for VDI desktops are provided. In one set of embodiments, a server system can intercept a call to a 3D API made by a 3D application running within a VM on the server system, where the VM hosts a desktop that is presented to a user of a client system. The server system can determine metadata associated with the call, where the metadata including a name of the 3D API and one or more input parameter values to the call, and can transmit the metadata to the client system. In response, the client system can reconstruct the call to the 3D API using the metadata and execute the call using one or more physical GPUs residing on the client system.