Glyph Management in Texture Atlases for UI Rendering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current glyph management in user interfaces is inefficient due to the need for extensive texture atlases that require significant memory and repeated data copying, especially when only a subset of glyphs is commonly used, leading to memory strain and inefficiencies in rendering text.

Innovation Solution

Storing glyph images in one of the red, green, blue, or alpha color channels of a texture atlas, with an associated atlas index defining the image's position, allowing for up to four times the storage capacity and efficient retrieval of glyphs, and dynamically updating the texture atlas as needed.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a texture atlas is created prior to use containing every possible glyph, then all glyphs can be displayed without repeated copying, but memory requirements increase significantly

Engineering Contradiction:
Improveglyph rendering efficiencyVSAvoidmemory requirements
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The texture atlas is made dynamic by allowing glyphs to be added on-demand during runtime rather than pre-loading all possible glyphs. The system monitors which glyphs are actually needed and loads only those into the texture atlas, transforming it from a static pre-filled structure to a dynamic adaptive structure that grows only when necessary.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the parameter of texture atlas content from 'all possible glyphs' to 'only needed glyphs'. By dynamically adjusting which glyphs are included based on actual usage requirements, the system optimizes the balance between having complete glyph coverage and minimizing memory consumption.

Inventive Principle:
Principle #35Parameter changes

2Ease of operation

If the texture atlas contains every glyph in every font, then no glyph retrieval is needed, but the atlas size becomes excessively large

Engineering Contradiction:
Improveglyph availabilityVSAvoidtexture atlas size
Core Design Contradiction:
Ease of operationVSArea of stationary object

Solution Approach 1:

The system extracts only the necessary subset of glyphs from the complete font set and loads only those into the texture atlas. Instead of including every possible glyph, the system identifies and extracts only the glyphs that are actually required for the current display needs, significantly reducing atlas size while maintaining glyph availability for needed characters.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

Rather than loading the complete set of all possible glyphs (excessive action), the system loads only the partial set that is actually needed for current display requirements. This partial loading approach avoids the waste of memory that would result from loading unused glyphs while ensuring all necessary glyphs are available.

Inventive Principle:
Principle #16Partial or excessive action

3Manufacturing precision

If each glyph parameter combination requires different atlas entries, then glyph rendering is precise, but memory usage increases

Engineering Contradiction:
Improveglyph parameter specificityVSAvoidmemory consumption
Core Design Contradiction:
Manufacturing precisionVSQuantity of substance

Solution Approach 1:

The texture atlas is designed to be universal by using a standardized entry format that can accommodate multiple glyph parameter combinations. Instead of creating separate dedicated entries for each parameter combination, the atlas uses a flexible structure where single entries can serve multiple purposes across different fonts, sizes, and styles, reducing overall memory consumption while maintaining precise glyph rendering capability.

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

Data Source

PatentUS10311060B2Glyph management in texture atlases
Publication Date: 2019.06.04 ESPIAL GROUP
  • US10311060B2 patent drawing
  • US10311060B2 patent drawing
  • US10311060B2 patent drawing

AI summary

Provided are methods and systems of glyph management using texture atlases that may, among other things, improve User Interface (UI) performance and quality, as well as reduce memory requirements for storing glyphs. Due to their monochrome nature, glyphs are stored on any one of the red, green, blue, or alpha color channels that exist within a texture memory. Commonly used glyphs may be used to generate an initial texture atlas or texture atlases. Texture atlases may also be dynamically updated as additional glyphs are needed. Required glyphs needed to be displayed in a UI may be provided from the texture atlas to a graphics processor, and the graphics processor can use texture information to render the glyphs in the UI.