EGGH06: SIGGRAPH/Eurographics Workshop on Graphics Hardware 2006 ISBN 3-905673-37-1 2019-08-24T04:54:24Z Efficient Depth Buffer Compression Efficient Depth Buffer Compression Hasselgren, Jon; Akenine-Möller, Tomas Marc Olano and Philipp Slusallek Depth buffer performance is crucial to modern graphics hardware. This has led to a large number of algorithms for reducing the depth buffer bandwidth. Unfortunately, these have mostly remained documented only in the form of patents. Therefore, we present a survey on the design space of efficient depth buffer implementations. In addition, we describe our novel depth buffer compression algorithm, which gives very high compression ratios. 2006-01-01T00:00:00Z High Quality Normal Map Compression High Quality Normal Map Compression Munkberg, Jacob; Akenine-Möller, Tomas; Ström, Jacob Marc Olano and Philipp Slusallek Normal mapping is a widely used technique in real-time graphics, but so far little research has focused on compressing normal maps. Therefore, we present several simple techniques that improve the quality of ATI s 3Dc normal map compression algorithm. We use varying point distributions, rotation, and differential encoding. On average, this improves the peak-signal-to-noise-ratio by 3 dB, which is clearly visible in rendered images. Our algorithm also allows us to better handle slowly varying normals, which often occurs in real-world normal maps. We also describe the decoding process in detail. 2006-01-01T00:00:00Z Compressed Lossless Texture Representation and Caching Compressed Lossless Texture Representation and Caching Inada, Tetsugo; McCool, Michael D. Marc Olano and Philipp Slusallek A number of texture compression algorithms have been proposed to reduce texture storage size and bandwidth requirements. To deal with the requirement for random access, these algorithms usually divide the texture into tiles and apply a fixed rate compression scheme to each tile. Fixed rate schemes are by nature lossy, and cannot adapt to local changes in image complexity. Multiresolution schemes, a form of variable-rate coding, can adapt to varying image complexity but suffer from fragmentation and can only compress a limited class of images. On the other hand, several lossless image compression standards have been established. Lossless compression requires variable-rate coding, and more efficient lossy algorithms also use variable-rate coding. Unfortunately, these standards cannot be used directly as texture compression schemes since they do not allow random access. We present a block-oriented lossless texture compression algorithm based on a simple variable-bitrate differencing scheme. A B-tree index enables both random access and efficient O(1) memory allocation without external fragmentation. Textures in our test suite compressed to between 6% and 95% of their original sizes. We propose a cache architecture designed to support our compression scheme. Cycle-accurate simulation shows that this cache architecture consistently reduces the external bandwidth requirements as well as the storage size without significantly affecting latency. 2006-01-01T00:00:00Z Pseudorandom Number Generation on the GPU Pseudorandom Number Generation on the GPU Sussman, Myles; Crutchfield, William; Papakipos, Matthew Marc Olano and Philipp Slusallek Statistical algorithms such as Monte Carlo integration are good candidates to run on graphics processing units. The heart of these algorithms is random number generation, which generally has been done on the CPU. In this paper we present GPU implementations of three random number generators.We show how to overcome limitations of GPU hardware that affect the feasibility and efficiency of employing a GPU-based RNG. We also present a data flow model for managing and updating substream state for each of the parallel substreams of random numbers. We show that GPU random number generators will greatly benefit from having more outputs from each thread. We discuss other hardware modifications that will be beneficial to the implementation of GPU-RNG, and we present performance measurements of our implementations. 2006-01-01T00:00:00Z