A Visualization Tool for 3D Graphics Program Comprehension and Debugging

Sahithi Podila, Ying Zhu · 2016

Real-time 3D graphics programs are based on a 3D pipeline structure. In a 3D pipeline, data is loaded, prepared, transferred from CPU to GPU, and then processed on GPU to create images. Regular debuggers and special graphics debuggers primarily focus on displaying data but do not show how data is transferred from CPU to GPU. If there is an error in data transfer, programmers usually need to locate the error by reading the source code, which many of our students find difficult. We have developed a tool to visualize data flow between CPU and GPU in a 3D pipeline. The visualization helps students understand 3D graphics programs, especially some of the implicit data connections in 3D graphics APIs. It also helps students quickly locate bugs related to data transfer in a 3D pipeline. We demonstrate our tool with an example that shows how a subtle error can be quickly detected in our visualization.

Read the paper · More papers on PaperTik