3D Texture Atlas Creation Using Octree Grouping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing 3D texture mapping techniques are inefficient in managing large data volumes, leading to excessive memory usage in the texture cache, where all voxels are loaded despite only surface voxels being needed, limiting graphics performance.

Innovation Solution

The method involves grouping refined triangles into standardized and non-standardized texture tiles using an octree data structure, optimizing memory usage by combining these tiles into texture atlases that fit within a preferred bounding volume, reducing the amount of texture cache memory required.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all voxels in the data volume are loaded into the texture cache, then complete 3D data is available for processing, but the memory usage in the texture cache becomes excessive

Engineering Contradiction:
Improvecompleteness of 3D dataVSAvoidmemory usage in texture cache
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent extracts only the necessary surface voxels from the complete 3D data volume and loads them into the texture cache, while leaving the interior voxels in the original data volume. This is achieved by identifying voxels that lie on the 3D surface and selectively transferring only those to the texture cache for rendering operations.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent segments the 3D data volume into surface voxels and interior voxels, then processes only the surface segment for texture mapping. This segmentation allows the system to work with a subset of the data that is actually needed for the intended application.

Inventive Principle:
Principle #1Segmentation

2Volume of stationary object

If the data volume is broken up into blocks for texture cache storage, then large data volumes can be processed, but the overhead for determining block size and reading blocks increases

Engineering Contradiction:
Improvedata volume processing capabilityVSAvoidoverhead for block processing
Core Design Contradiction:
Volume of stationary objectVSLoss of time

Solution Approach 1:

Instead of dividing the data volume into blocks and processing them sequentially, the patent extracts the surface voxels directly from the entire data volume in a single operation, eliminating the block division overhead while still handling large data volumes efficiently.

Inventive Principle:
Principle #2Taking out (Extraction)

3Reliability

If a large amount of texture cache is used to store all voxels, then complete 3D data is available, but the texture cache available for other graphics operations is limited

Engineering Contradiction:
Improveavailability of 3D dataVSAvoidgraphics rendering performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent extracts only the surface voxels needed for rendering and places them in the texture cache, leaving the interior voxels in the original data volume. This extraction approach minimizes texture cache usage while maintaining the ability to access complete 3D data when needed.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The patent applies partial action by loading only the necessary portion (surface voxels) of the complete 3D data into the texture cache, rather than loading all voxels. This partial loading strategy optimizes cache utilization for the specific rendering task while preserving access to the full data set.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9892555B2Systems and methods for creating a three-dimensional texture atlas
Publication Date: 2018.02.13 LANDMARK GRAPHICS CORP
  • US9892555B2 patent drawing
  • US9892555B2 patent drawing
  • US9892555B2 patent drawing

AI summary

Systems and methods for reducing the amount of texture cache memory needed to store a texture atlas by using uniquely grouped refined triangles to create each texture atlas.