About: id Software is a based out in . It is known for research contribution in the topics: Real-time computer graphics & Texture memory. The organization has 3 authors who have published 6 publications receiving 44 citations. The organization is also known as: id & Id Software Inc..
TL;DR: This course introduces partially resident textures (PRTs), a new GPU feature for virtual texturing, and contrasts them with software-based methods of virtual textures, and introduces the new AMD sparse-texture OpenGL extension that exposes PRTs to software applications.
Abstract: 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.
TL;DR: This course is presented in four sections and shows how support for hardware-assisted virtual texturing was integrated into a game engine, and the challenges associated with ensuring that the engine continued to operate efficiently on hardware that does not supportvirtual texturing.
Abstract: This course is presented in four sections. The first two presentations show how huge data sets can be streamed and displayed in real time for virtual-globe rendering inside a web browser. Topics include pre-processing, storage, and transmission of real-world data, plus cache hierarchies and efficient culling algorithms.The third section reviews content generation using a combination of procedural and artist-driven techniques. It explores integration of content-generation applications into production tool chains and their use in creation of real-world video games. Topics include productivity, data dependencies, and the trade-offs of putting massive procedural content generation into production.The fourth section covers recent advances in graphics hardware architecture that allow GPUs to virtualize graphics resources (specifically, textures) by leveraging virtual memory. It discusses augmentation of traditional graphics APIs and presents several use cases and examples.The final presentation shows how support for hardware-assisted virtual texturing was integrated into a game engine. It reviews the challenges associated with ensuring that the engine continued to operate efficiently on hardware that does not support virtual texturing. It also illustrates the concessions made in the engine for limitations of existing hardware and proposes some future enhancements that would improve the usability of the solution.
TL;DR: This second course in the series Beyond Programmable Shading presents the state of the art in combining traditional rendering API usage with advanced task- and data-parallel computation to increase the image quality of interactive graphics.
Abstract: There are strong indications that the future of interactive graphics programming is a more flexible model than today's OpenGL/Direct3D pipelines. Graphics developers need a basic understanding of how to combine emerging parallel programming techniques and more flexible graphics processors with the traditional interactive rendering pipeline. As the first in a series, this course introduces the trends and directions in this emerging field. Topics include: parallel graphics architectures, parallel programming models for graphics, and game-developer investigations of the use of these new capabilities in future rendering engines.This second course in the series Beyond Programmable Shading presents the state of the art in combining traditional rendering API usage with advanced task- and data-parallel computation to increase the image quality of interactive graphics.Leaders from graphics hardware vendors, game development, and academic research present case studies that show how general parallel computation is being combined with the traditional graphics pipeline to boost image quality and spur new graphics algorithm innovation. Each case study discusses the mix of parallel programming constructs, details of the graphics algorithm, and how the rendering pipeline and computation interact to achieve the technical goals. Presenters also discuss integrating a combination of GPU and CPU techniques for more efficient and flexible algorithms. The focus is on what currently can be done, how it is done, and near-future trends. Topics include: interactive realistic lighting, advanced geometry-processing pipelines, in-frame data structure construction, complex image processing, and rasterization versus ray tracing.
TL;DR: This second course in a series will demonstrate case studies of combining traditional rendering API usage with advanced parallel computation from game developers, researchers, and graphics hardware vendors.
Abstract: This second course in a series will demonstrate case studies of combining traditional rendering API usage with advanced parallel computation from game developers, researchers, and graphics hardware vendors. There are strong indications that the future of interactive graphics programming is a model more flexible than today's OpenGL/Direct3D pipelines. As such, graphics developers need to have a basic understanding of how to combine emerging parallel programming techniques and more flexible graphics processors with the traditional interactive rendering pipeline. Each case study includes a live demo and discusses the mix of parallel programming constructs used, details of the graphics algorithm, and how the rendering pipeline and computation interact to achieve the technical goals.