当前位置:嗨网首页>书籍在线阅读

01-使用Nsight图形调试器

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

附录C 使用Nsight图形调试器

调试GLSL着色器代码非常困难。与一般编程语言(如C++或Java)中编程不同,在着色器编程中,经常无法确定发生错误的确切位置。通常,着色器错误的表现只是白屏,而不提供有关错误性质的线索。更令人沮丧的是,在运行期间无法打印着色器变量的值,就像平时定位没有头绪的bug那样。

我们在2.2节列出了一些检测OpenGL和GLSL错误的技术。尽管这些技术提供了一定的帮助,但缺乏显示着色器变量值这样的基础功能是一个严重的障碍。

出于这个原因,显卡制造商有时会在硬件中提供相关功能,使得可以在着色器运行时从其中提取信息,并提供带图形界面的调试器以访问这些信息的工具。每个制造商的调试工具仅适用于该厂商的显卡。NVIDIA的图形调试器是Nsight工具套件中的一部分,AMD也有类似的工具套件,名为CodeXL。本附录介绍如何使用Nsight。