Mid-Render Buffer Capture for 2D-to-3D Game Frame Conversion

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In rendering video frames for computer simulations, valuable information is lost due to the reuse of data buffers before the full frame composition, preventing the operating system from accessing crucial data for 2D to 3D conversion, accessibility enhancements, and other effects.

Innovation Solution

A system captures data mid-rendering from data buffers, such as depth and color buffers, using a customized script to record information before it is overwritten, allowing for 2D to 3D conversion, object coloring, and highlighting, which can be applied dynamically or in remastered versions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If data buffers are re-used during frame composition, then rendering efficiency is improved, but valuable rendering information is lost

Engineering Contradiction:
Improverendering efficiencyVSAvoidrendering information
Core Design Contradiction:
ProductivityVSLoss of information

Solution Approach 1:

The system performs preliminary capture of buffer data at specific moments during the rendering process, before the buffers are overwritten with new data. This allows the OS to preserve valuable intermediate rendering information (such as depth buffer data or color buffer data from specific layers) while still allowing the rendering process to continue efficiently with buffer reuse.

Inventive Principle:
Principle #10Preliminary action

2Ease of operation

If the OS accesses game data directly, then data accessibility is improved, but the game's internal rendering process is disrupted

Engineering Contradiction:
Improvedata accessibilityVSAvoidrendering process
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The system introduces a script-based intermediary layer that acts as a mediator between the OS and the game's rendering process. The script monitors rendering commands, identifies when to capture buffer data, and coordinates with the rendering pipeline without disrupting it. This allows the OS to access rendering information while the game's internal process continues uninterrupted.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of information

If buffer data is captured mid-rendering, then information availability is improved, but system complexity increases

Engineering Contradiction:
Improveinformation availabilityVSAvoidsystem complexity
Core Design Contradiction:
Loss of informationVSDevice complexity

Solution Approach 1:

The system employs a self-service approach where the script automatically monitors rendering commands and autonomously determines when to capture buffer data based on the rendering state. The script identifies relevant capture points (such as when specific layers are rendered to buffers) without requiring complex external control systems, thereby reducing overall system complexity while maintaining information availability.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS12485346B2Capturing computer game output mid-render for 2D to 3D conversion, accessibility, and other effects
Publication Date: 2025.12.02 SONY INTERACTIVE ENTERTAINMENT LLC
  • US12485346B2 patent drawing
  • US12485346B2 patent drawing
  • US12485346B2 patent drawing

AI summary

Important information with respect to image generation such as computer game video generation can be lost once the full image is composed. To avoid this, a customized capture script is created for a computer game to specify what to capture, for future use, in the middle of rendering a game video frame, such as frame buffer, depth buffer, stencil buffers, etc. The script also specifies when during frame rendering the data is to be recorded. By capturing data mid-frame, object boundaries on the screen and relative distances between objects can be inferred. This information can be used in 2D-to-3D conversion, object coloring for increased contrast, object highlighting, etc.