5 results
Search Results
Now showing 1 - 5 of 5
Item SPAF: Sub-texel Precision Anisotropic Filtering(The Eurographics Association, 2001) Shin, Hyun-Chul; Lee, Jin-Aeon; Kim, Lee-Sup; Kurt Akeley and Ulrich NeumannTexture mapping is a technique which most effectively improves the realism of computer-generated scenes in 3D Graphics. Trilinear filtering of the mip-mapped textue has been popular as a texture filtering method but it blurs images on the surface of objects angled obliquely away from the viewer in a scene. Various anisotropic filtering methods like footprint assembly, Feline, and fast footprint mip-mapping have been proposed to satisfy the desire for the high quality image [7]. In spite of the increase of the memory bandwidth, tie memory bandwidth limit is still the bottleneck of the texture filtering hardware. Moreover, it is very important to keep the quality of rendered image good. In this paper, we propose Sub-texel Precision Anisonopic Filtering (SPAF) which filters texels in a region that covers a quadrilateral footprint with the weights. The weight plays a key role in effective filtering to render the image of high quality with the restricted number of texels loaded from memory for real-time filtering. First, the area coverage based texel filtering scheme is introduced to obtain the footprint's coverage for each texel on the sub-texel precision leading to the small weight table size. Second, the Gaussian weight is applied to this footprinfs coverage for each texel to reduce the artifacts. Therefore, the quality of rendered images is superior to other anisotropic filtering methods in the same restricted number of texels. And the size ofthis weight table is several hundred KBytes which is much smaller than fast footprint mip-mapping. This small ROM table size enables the SPAF to be implemented at feasible hardware costs.Item Quasi-Linear Depth Buffers With Variable Resolution(The Eurographics Association, 2001) Lapidous, Eugene; Jiao, Guofang; Zhang, Jianbo; Wilson, Timothy; Kurt Akeley and Ulrich NeumannIn this paper we present new class of variable-resolution depth buffers, providing a flexible trade-off between depth precision in the distant areas of the view volume and performance. These depth buffers can be implemented using linear or quasi-linear mapping function of the distance to the camera to the depth in the screens pace. In particular, the complementary Z buffer algorithm combines simplicity of implementation with significant bandwidth savings. A variable-resolution depth buffer saves bandwidth by changing size of the per-pixel depth access from 24 bits to 16 bits when distance to the pixel from the camera becomes larger than a given threshold, This distance is selected in order to keep the resulting resolution equal or larger than the resolution of the 24-bit screen Z buffer. For dynamic ratios of the distances between far and near planes 500 and above, bandwidth savings may exceed 20%. Quasi-linear depth floating-point depth buffers are best at high dynamic ratios; 3D hardware should support per-frame setting of the optimal depth buffer type and format. Per-frame adjustment of the resolution switch distance allows balancing performance with depth precision and should be exposed in the graphics A PI.Item Vertex-based Anisotropic Texturing(The Eurographics Association, 2001) Olano, Marc; Mukherjee, Shrijeet; Dorbie, Angus; Kurt Akeley and Ulrich NeumannMIP mapping is a common method used by graphics hardware to avoid texture aliasing. In many situations, MIP mapping over-blurs in one direction to prevent aliasing in another. Anisotropic texturing reduces this blurring by allowing differing degrees of filtering in different directions, but is not as common in hardware due to the implementation complexity of current techniques. We present a new algorithm that enables anisotropic texturing on any current MIP map graphics hardware supporting MIP level biasing, available in OpenGL 7.2 or through the GLEXT-texture-lod-bias or GL-SGIX-texture-lod-bias OpenGL extensions. The new algorithm computes anisotropic filter footprint parameters per vertex. It constructs the anisotropic filter out of several MIP map texturing passes or multitexture lookups. Each lookup uses MIP level bias and perturbed texture coordinates to place one probe used to construct the more complex filter profile.Item Perlin Noise Pixel Shaders(The Eurographics Association, 2001) Hart, John C.; Kurt Akeley and Ulrich NeumannWhile working on a method for supporting real-time procedural solid texturing, we developed a general purpose multipass pixel shader to generate the Perlin noise function. We implemented this algorithm on SGI workstations using accelerated OpenGL PixelMap and PixelTransfer operations, achieving a rate of 2.5 Hz for a 256x256 image. We also implemented the noise algorithm on the NVidia GeForce2 using register combiners. Our register combiner implementation required 375 passes, but ran at 1.3 Hz. This exercise illustrated a variety of abilities and shortcomings of current graphics hardware. The paper concludes with an exploration of directions for expanding pixel shading hardware to further support iterative multipass pixel-shader applications.Item The F-Buffer: A Rasterization-Order FIFO Buffer for Multi-Pass Rendering(The Eurographics Association, 2001) Mark, William R.; Proudfoot, Kekoa; Kurt Akeley and Ulrich NeumannMulti-pass rendering is a common method of virtualizing graphics hardware to overcome limited resources. Most current multi-pass rendering techniques use the RGBA framebuffer to store intermediate results between each pass. This method of storing intermediate results makes it difficult to conectly render partially-transparent surfaces, and reduces the performance of shaders that need to preserve more than one intermediate result between passes. We propose an alternative approach to storing intermediate results that solves these problems. This approach stores intermediate colors (or other values) that are generated by a rendering pass in a FIFO buffer as the values exit the fragment pipeline. On a subsequent pass, the contents of the FIFO buffer are fed into the top of the fragment pipeline. We refer to this FIFO buffer as a fragment-stream buffer (or F-buffer), because this approach has the effect of associating intermediate results with particular rasterization fragments, rather than with an (x,y) location in the framebuffer. Implementing an F-buffer requires some changes to current mainstream graphics architectures, but these changes can be minor. We describe the designs pace associated with implementing an F-buffer, and compare the F-buffer to recirculating pipeline designs. We implement F-buffers in the Mesa software renderer, and demonstrate our programmable-shading system running on top of this renderer.