Demand-Based Texture Rendering in Tile-Based Graphics

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In real-time computer graphics, the rendering of textures for techniques like environment mapping and shadow mapping consumes significant memory bandwidth, with much of the rendered data not being subsequently used, leading to inefficiencies in tile-based rendering systems.

Innovation Solution

Implementing a demand-based texture rendering system where the rasterization of dynamically rendered texture surfaces is deferred until they are referenced, allowing only required texture tiles to be rendered and stored in a small write-back cache for immediate use, reducing memory bandwidth and processing overhead.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If all texture surfaces are pre-rendered and stored in memory, then texture data is available for immediate use, but memory bandwidth is significantly consumed and much rendered data remains unused

Engineering Contradiction:
Improvetexture data availabilityVSAvoidmemory bandwidth usage
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system performs preliminary tiling of texture surfaces without full rasterization, preparing only the structural framework in advance. The actual pixel-level rendering is deferred until the texture is actually referenced during scene rendering, ensuring that rendering effort is concentrated only on the portions of textures that will be used.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The invention extracts and separates the tiling phase from the rasterization phase. Tiling (dividing texture into tiles) is performed in advance, while rasterization (actual pixel rendering) is extracted and deferred to occur only when and where needed during scene rendering, removing unnecessary rendering work from the pre-processing stage.

Inventive Principle:
Principle #2Taking out (Extraction)

2Manufacturing precision

If large texture maps are rendered for shadow mapping and environment mapping, then rendering quality is improved, but memory bandwidth consumption increases significantly

Engineering Contradiction:
Improverendering qualityVSAvoidmemory bandwidth usage
Core Design Contradiction:
Manufacturing precisionVSLoss of energy

Solution Approach 1:

The texture surfaces are segmented into multiple rectangular tiles, allowing the system to selectively render only the specific tiles that are actually needed for shadow mapping or environment mapping. This segmentation enables partial rendering of large textures rather than rendering the entire texture map, maintaining quality where needed while reducing overall memory bandwidth consumption.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Instead of rendering complete large texture maps, the system performs partial rendering by generating only the specific texture tiles that are required for the current scene's shadow mapping or environment mapping needs. This partial action approach maintains necessary rendering quality while avoiding the excessive memory bandwidth consumption of rendering unused texture portions.

Inventive Principle:
Principle #16Partial or excessive action

3Quantity of substance

If texture data is stored in external memory, then large texture maps can be maintained, but access speed and memory bandwidth are limited

Engineering Contradiction:
Improvetexture data capacityVSAvoidmemory access speed
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The system implements a nested memory hierarchy where recently accessed or currently needed texture tiles are loaded into an on-chip cache (faster memory) from external memory (slower but larger capacity). This nesting allows the system to maintain large texture data capacity in external memory while providing fast access speeds for the specific tiles that are actively being used during scene rendering.

Inventive Principle:
Principle #7Nested doll (Nesting)

Solution Approach 2:

The invention applies local quality optimization by ensuring that texture tiles currently being rendered are kept in the on-chip cache subsystem rather than being repeatedly fetched from external memory. This local optimization of data placement ensures that the specific portion of texture data that is actively needed has fast access, while other portions remain in external memory.

Inventive Principle:
Principle #3Local quality

Data Source

PatentEP3144897B1Demand based texture rendering in a tile based rendering system
Publication Date: 2020.01.01 IMAGINATION TECH LTD
  • EP3144897B1 patent drawingFigure 1
  • EP3144897B1 patent drawingFigure 2
  • EP3144897B1 patent drawingFigure 3

AI summary

A method and apparatus are provided for shading and texturing computer graphic images in a tile based rendering system using dynamically rendered textures. Scene space geometry is derived for a dynamically rendered texture and passed to a tiling unit which derives scene space geometry for a scene which references the textures. Scene space geometry for a scene that references the dynamically rendered texture is also derived and passed to the tiling unit. The tiling unit uses object data derived from the scene space geometry to detect reference to areas of dynamically rendered textures, as yet un-rendered. These are then dynamically rendered.