Path Rendering Using BSP Tree Winding Number Detection

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current GPU acceleration methods for path rendering are inefficient due to input data not being configured as triangles, making it difficult to enhance rendering performance.

Innovation Solution

A method involving the generation of a binary space partitioning tree (BSP Tree) to partition spaces based on primitives, selecting pixels, and computing winding numbers to determine rendering, utilizing a tree generator, selector, and detector for efficient path rendering.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If GPU hardware structure is designed based on triangle configuration to accelerate rendering, then rendering performance is improved, but path rendering performance cannot be enhanced because input data is configured as commands and vertexes rather than triangles

Engineering Contradiction:
Improverendering performanceVSAvoidpath rendering compatibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The patent segments the path rendering process into two distinct phases: a CPU-based phase that processes path commands and vertices and generates triangle strips, and a GPU-based phase that renders the pre-generated triangle strips. This segmentation allows each phase to be optimized for its specific requirements, resolving the contradiction between path rendering compatibility and rendering performance.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces triangle strips as an intermediary data structure between path commands/vertices and GPU rendering operations. The triangle strips serve as a bridge that translates path-specific data formats into GPU-optimized triangle-based data, enabling both path rendering compatibility and high rendering performance.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If path rendering is performed using conventional GPU methods, then device complexity is reduced, but productivity is low due to inefficient processing of path commands and vertices

Engineering Contradiction:
Improvepath rendering speedVSAvoidrendering system complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent divides the rendering system into two functional segments: a CPU-based path processing unit that handles command interpretation and triangle strip generation, and a GPU-based rendering unit that handles actual rendering. This segmentation improves productivity by allowing parallel processing while managing device complexity through clear functional separation.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent performs preliminary processing of path commands and vertices on the CPU to generate optimized triangle strips before transferring data to the GPU. This preliminary action reduces the complexity of data processing during the actual rendering phase, thereby improving overall rendering speed without significantly increasing device complexity.

Inventive Principle:
Principle #10Preliminary action

3Speed

If space partitioning is performed to improve rendering efficiency, then rendering speed is improved, but device complexity increases due to tree generation and detection processes

Engineering Contradiction:
Improverendering speedVSAvoidspace partitioning structure complexity
Core Design Contradiction:
SpeedVSDevice complexity

Solution Approach 1:

The patent performs space partitioning and tree generation as preliminary actions during the CPU-based processing phase, before the actual GPU rendering occurs. By pre-computing the space partitioning structure and winding numbers, the patent reduces the complexity of real-time rendering operations, thereby improving rendering speed without significantly increasing device complexity during the critical rendering path.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10366532B2Method and apparatus for performing path rendering
Publication Date: 2019.07.30 SAMSUNG ELECTRONICS CO LTD
  • US10366532B2 patent drawing
  • US10366532B2 patent drawing
  • US10366532B2 patent drawing

AI summary

A method of rendering an object including a path formed by a primitive includes: generating a tree corresponding to spaces partitioned by the primitive; selecting a pixel from the partitioned spaces; and acquiring a winding number of the selected pixel by detecting the tree.