Vertex Shader Viewing Angle Adaptation for Stereoscopic Rendering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current graphics processing technologies struggle to generate stereoscopic 3D views without modifying existing applications or graphics drivers, and they fail to adapt to varying viewing angles, which limits the quality and realism of the stereoscopic experience.

Innovation Solution

A method that modifies the instructions of a vertex shader based on the viewing angle to displace pixel locations in different directions for left-eye and right-eye images, allowing a graphics processing unit (GPU) to generate stereoscopic views from mono views during runtime, without requiring changes to the application or graphics driver.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If a shader program is designed to generate a mono view, then the application can run without modification, but the GPU cannot generate stereoscopic view

Engineering Contradiction:
Improvestereoscopic view generation capabilityVSAvoidshader program complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The shader program dynamically adapts its behavior based on a view parameter. When the view parameter indicates stereoscopic mode, the shader generates displaced pixel locations for left-eye and right-eye images. When in mono mode, it generates standard pixel locations. This dynamic adaptation allows the same shader to serve multiple purposes without requiring separate shader programs for each view type.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The invention changes the view parameter to control the shader's output behavior. By modifying the view parameter to indicate stereoscopic mode, the system transforms the shader's function from generating mono views to generating stereoscopic views with horizontal displacement. This parameter-based control allows flexible switching between view types without code modification.

Inventive Principle:
Principle #35Parameter changes

2Adaptability or versatility

If the shader displaces pixel locations for stereoscopic view, then depth perception is enhanced, but the viewing angle adaptation is lost

Engineering Contradiction:
Improveviewing angle adaptationVSAvoidpixel location accuracy
Core Design Contradiction:
Adaptability or versatilityVSManufacturing precision

Solution Approach 1:

The pixel displacement amount is dynamically adjusted based on the detected viewing angle. When the viewer is at the center viewing angle, maximum displacement is applied for optimal stereoscopic effect. When the viewer moves to extreme angles, the displacement amount is reduced proportionally. This dynamic adjustment maintains depth perception across different viewing positions while adapting to the actual viewing geometry.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The shader receives the viewing angle as a parameter and uses it to calculate the appropriate pixel displacement amount. The displacement parameter is computed as a function of the viewing angle, allowing the shader to automatically adjust its output to match the actual viewing conditions. This parameter-driven approach enables continuous adaptation to different viewing angles while maintaining accurate stereoscopic rendering.

Inventive Principle:
Principle #35Parameter changes

3Adaptability or versatility

If the shader program is modified to generate stereoscopic view, then 3D volume perception is achieved, but compatibility with existing applications is reduced

Engineering Contradiction:
Improveview type flexibilityVSAvoidapplication compatibility
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The modified shader program becomes universal by handling both mono and stereoscopic views through a single codebase. The shader checks the view parameter and automatically adjusts its behavior accordingly. This multi-functionality eliminates the need for separate shader programs for different view types and maintains compatibility with existing applications that pass the view parameter, while enabling new stereoscopic functionality.

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

Solution Approach 2:

The view parameter acts as an intermediary between the application and the shader logic. Applications continue to pass this parameter as before, maintaining compatibility. The shader uses this parameter to determine whether to generate mono or stereoscopic output. This intermediary approach allows the system to support multiple view types without requiring application modifications.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS9538164B2Stereoscopic conversion with viewing orientation for shader based graphics content
Publication Date: 2017.01.03 QUALCOMM INC
  • US9538164B2 patent drawing
  • US9538164B2 patent drawing
  • US9538164B2 patent drawing

AI summary

The example techniques of this disclosure are directed to generating a stereoscopic view from an application designed to generate a mono view. For example, the techniques may modify instructions for a vertex shader based on a viewing angle. When the modified vertex shader is executed, the modified vertex shader may generate coordinates for vertices for a stereoscopic view based on the viewing angle.