Pre-culling Index Array for Hidden Surface Removal

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional hidden surface removal methods in graphics rendering are inefficient due to reliance on real-time calculations in eye space, requiring complex operations and redundant culling calculations, especially when determining the visibility of polygons based on angles between normals.

Innovation Solution

A pre-culling method and system that transforms eye coordinates to model space, classifies normal vectors into quadrants to generate a pre-calculated culling index (PCCI) array, allowing for off-line processing and reducing real-time calculations by determining front and back faces without rendering invisible polygons.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional culling methods are used in eye space with real-time angle calculations, then culling decisions can be made, but the computational complexity increases and rendering speed decreases

Engineering Contradiction:
Improverendering speedVSAvoidcomputational complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by pre-calculating the culling index array during an offline setup phase. The eye coordinate is transformed to model space in advance, and the normal vector comparisons are performed beforehand to generate a lookup table. During real-time rendering, the system simply queries this pre-computed array instead of performing complex angle calculations, thereby resolving the contradiction between rendering speed and computational complexity.

Inventive Principle:
Principle #10Preliminary action

2Measurement precision

If coordinate transformation and lighting operations are performed before culling calculation in eye space, then accurate visibility determination is achieved, but redundant operations increase processing time

Engineering Contradiction:
Improveculling accuracyVSAvoidprocessing time
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent inverts the conventional approach by transforming the eye coordinate to model space instead of transforming polygons to eye space. This reversal allows the system to work with the polygon's local coordinate system and pre-compute culling information in model space, eliminating redundant coordinate transformations and lighting operations while maintaining culling accuracy.

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

3Ease of operation

If real-time angle calculation between normals is performed for each polygon face, then front and back faces can be identified, but the number of instructions required increases

Engineering Contradiction:
Improveculling determinationVSAvoidnumber of instructions
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The patent uses copying by creating a pre-computed culling index array that stores the results of normal vector comparisons. Instead of recalculating angles in real-time, the system copies and queries pre-stored culling decisions from the lookup table based on the eye coordinate's position in model space, dramatically reducing the number of instructions required while maintaining ease of operation.

Inventive Principle:
Principle #26Copying

Data Source

PatentUS8723864B2Pre-culling processing method, system and computer readable medium for hidden surface removal of image objects
Publication Date: 2014.05.13 VIA TECH INC
  • US8723864B2 patent drawing
  • US8723864B2 patent drawing
  • US8723864B2 patent drawing

AI summary

A pre-culling method for the hidden surface removal of image objects is disclosed. The steps of the pre-culling method includes: transforming an eye coordinate from an eye space to a model space of a polygon when performing a rendering operation; and comparing a normal vector of the eye coordinate in the model space with the normal vector of each face of the polygon to determine whether each face of the polygon with respect to the eye coordinate is a front face or a back face.