3D Scene Rendering with Unified VBOs and Object ID Metadata

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing systems struggle to efficiently render large 3D scenes with complex geometries and numerous objects on devices with limited processor and memory capacity, leading to high CPU load and low frame rates due to the need for numerous draw calls and large metadata volumes.

Innovation Solution

Combine 3D scene objects into fewer, larger Vertex Buffer Objects (VBOs) and use Object IDs to manage metadata, enabling a single draw call to handle multiple materials and objects, with separate frame buffers for object selection and metadata lookup.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If each object in a 3D scene is rendered with a separate draw call, then object detail and material variety are maintained, but CPU workload increases and frame rate decreases

Engineering Contradiction:
Improveframe rateVSAvoidnumber of draw calls
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges multiple objects and materials into a single draw call by using a unified vertex buffer object (VBO) that stores all object vertices with their corresponding material information. This allows the GPU to render all objects in one batch operation, reducing the number of draw calls from thousands to just one, thereby dramatically improving frame rate while maintaining object detail through proper vertex and material indexing.

Inventive Principle:
Principle #5Merging (Combining)

2Measurement precision

If metadata for each object is stored and processed separately, then object identification and selection are accurate, but memory usage and processing time increase

Engineering Contradiction:
Improveobject identification accuracyVSAvoidmetadata volume
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent creates a universal metadata structure that serves multiple functions simultaneously. A single metadata array stores identification information, material properties, and selection state for all objects, eliminating the need for separate metadata structures for each object. This multi-functional approach maintains accurate object identification while significantly reducing total metadata volume and processing overhead.

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

3Productivity

If the rendering system processes all objects simultaneously, then complete scene rendering is achieved, but processor capacity is overwhelmed

Engineering Contradiction:
Improverendering speedVSAvoidprocessor capacity
Core Design Contradiction:
ProductivityVSPower

Solution Approach 1:

The patent replaces the traditional CPU-driven incremental rendering approach with a GPU-accelerated batch processing system. By transferring all object vertices and material data to a unified VBO in GPU memory, the system enables the GPU to process all objects in a single parallel operation, substituting sequential CPU processing with parallel GPU computation, thereby achieving high rendering speed without overwhelming processor capacity.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Data Source

PatentEP4078529B13D rendering
Publication Date: 2026.02.11 PROCORE TECHNOLOGIES INC
  • EP4078529B1 patent drawingFigure 1
  • EP4078529B1 patent drawingFigure 2
  • EP4078529B1 patent drawingFigure 3

AI summary

According to the present invention, conventional 3D data models typically stored in a vertex buffer are processed so that all geometry is combined to one big geometry per node as an VBO. The vertex contains position (x,y,z), Normal (x,y,z), but according to the present invention also an Object ID for each object. Further, a metadata database is created where all additional information is stored, and if there are multiple geometries in the same object, multiple Object IDs to the same metadata entry are added under primitives. By extracting metadata and Materials, it is made possible to handle a node as a single Vertex Buffer Object (VBO). This is highly efficient instead of doing one draw call per object.