We present a vertex compression technique suitable for efficient decompression on graphics hardware. Given a user-specified number of bits per vertex, we automatically allocate bits to vertex attributes for quantization to maximize quality, guided by an image-space error metric. This allocation accounts for the constraints of graphics hardware by packing the quantized attributes into bins associated with the hardware's vectorized vertex data elements. We show that this general approach is also applicable if the user specifies a total desired model size. We present an algorithm that integrally combines vertex decimation and attribute quantization to produce the best quality model for a user-specified data size. Such models have an appropriate balance between the number of vertices and the number of bits per vertex.Vertex data is transmitted to and optionally stored in video memory in the compressed form. The vertices are decompressed on-the-fly using a vertex program at rendering time. Our algorithms not only work well within the constraints of current graphics hardware but also generalize to a setting where these constraints are relaxed. They apply to models with a wide variety of vertex attributes, providing new tools for optimizing space and bandwidth constraints of interactive graphics applications.
We present a new, unified approach to debugging graphics software. We propose a representation of all graphics state over the course of program execution as a relational database, and produce a query-based framework for extracting, manipulating, and visualizing data from all stages of the graphics pipeline. Using an SQL-based query language, the programmer can establish functional relationships among all the data, linking OpenGL state to primitives to vertices to fragments to pixels. Based on the Chromium library, our approach requires no modification to or recompilation of the program to be debugged, and forms a superset of many existing techniques for debugging graphics software.
We present a new, unified approach to debugging graphics software. We propose a representation of all graphics state over the course of program execution as a relational database, and produce a query-based framework for extracting, manipulating, and visualizing data from all stages of the graphics pipeline. Using an SQLbased query language, the programmer can establish functional relationships among all the data, linking OpenGL state to primitives to vertices to fragments to pixels. Based on the Chromium library, our approach requires no modification to or recompilation of the program to be debugged, and forms a superset of many existing techniques for debugging graphics software.
While the dream of a graphics debugger on par with GDB or Visual Studio is one of the better sorts of dreams to have, there are many difficult challenges involved in making that dream a reality. Some of these challenges are fundamental to the task of graphics debugging while others are the result of drivers, shaders and hardware being designed with little thought to the graphics debugging process. While adding additional detail to our SIGGRAPH paper on this subject [Duca et al. 2005] is one of our goals, we also want to show how well current systems work with the basic paradigm of graphics debugging. As will be clear, some graphics systems and programming models put up hurdles that, if removed, would go a long way toward simplifying the design of a graphics debugger.Our approach to graphics debugging is meant to capture the relationships between the different types of graphics data while still being practical to use: our system works on unmodified applications and in doing so does not actually modify the application's output. We use a fake OpenGL driver derived from the Chromium software to selectively buffer and track an application's drawing calls. These captured "chunks" are then passed through a shader rewriter, rendered to an offscreen texture and read-back into CPU memory. A relational algebra language similar to SQL is then used to manipulate the obtaineyd data into a useful form. Our technique is viable viable for most OpenGL extensions and across most application/scene sizes.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2025 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.