Conference 5–9 August 2012
Exhibition 7–9 August 2012
Los Angeles Convention Center

Virtual Texturing in Software and Hardware

Los Angeles Convention Center, Room 403AB

This course introduces partially resident textures (PRTs), a new GPU feature for virtual texturing, and contrasts them with software-based methods of virtual texturing. PRTs are available in the Southern Islands (Radeon HD 7xxx) family of graphics processors.

The basic idea of virtual texturing is simple: instead of maintaining a separate texture for each object rendered on the screen, all textures are stored in a "virtual texture". The size of the virtual texture is on the order of billions of texels, and each object is assigned unique virtual-texture coordinates from the virtual texture. When used in a shader, the virtual-texture coordinates are translated into physical-texture coordinates, which are used to access the physical texture that contains the working set of all required tiles.

Existing approaches implement the entire virtual texturing algorithm in software. The software is required to update the page table (another texture used for translating virtual texture coordinates to physical ones), perform address translation, and deal with hardware differences when it comes to supported texture types, formats, and filtering modes. The first part of the course outlines this process and discusses difficulties encountered when this technology is deployed in RAGE. PRTs eliminate the need for maintaining the page table and address translation and provide support for all texture types, formats, and filtering modes. The second part of the course describes the hardware architecture as it relates to PRTs. The third part of the course introduce the new AMD sparse-texture OpenGL extension that exposes PRTs to software applications. The course includes several PRT use cases, a technical demo, and a summary of the strengths and weaknesses of PRT technology.

COURSE SCHEDULE

2 pm
Introduction to Virtual Texturing
Obert

2:10 pm
Software Virtual Textures (Megatexture) in RAGE
van Waveren

2.30 pm
Partially Resident Textures
Obert

2:50 pm
OpenGL Sparse Texture Extension
Sellers

3:10 pm
Demo (RAGE Running PRTs)
van Waveren and Sellers

3:20 pm
Conclussion and Discussion
Obert, van Waveren and Sellers

Level

Intermediate

Prerequisites

Knowledge of texturing, shaders, and basic graphics hardware.

Intended Audience

Graphics software developers.

Instructor(s)

Juraj Obert
Advanced Micro Devices, Inc.

J.M.P. van Waveren
id Software LLC

Graham Sellers
Advanced Micro Devices, Inc.