GLDog对NVIDIA SDK的glsl_dispersion分析示例

采用GLDog对NVIDIA SDK之中的glsl_dispersion进行分析:
1。采用缺省的设置,选择Debug模式,运行glsl_dispersion:

程序之中所有的Render Context都可以显示出来,其中包含了被删除的。针对不同的RC,可以分别选择:不绘制场景、关闭固定管线光照、1*1
象素视口、短路纹理、短路VS/FS、光栅模式、剔除模式、状态变量等等。

2。选择以线框模式观察结果

以线框模式或者点模式观察场景,可以帮助你对程序进行分析。

3。以剔除前面的方式观察结果

在Debug下,使用不同的面剔除方式,可以判断出你的程序是否因为面剔除而产生错误。

4。以短路纹理方式观察结果

以短路纹理观察可以判断纹理是否是瓶颈。

5。Shader(GLSL)查看

上次我们展示的是Cg代码,这次看到的是GLSL源代码。

6。Step方式调试观察绘制结果

左图Step停顿在glCallList(1)处,本身这个语句还没有执行,可以看到,它上面有6个glBegin(GL_QUADS),可能你已经猜到了,这些语句是在绘制背景Box。
而按下F10之后,glCallList(1)执行了,兔子绘制出来了,变为右图所示的情形,相应的停在了wglSwapBuffer处。
通过Step绘制命令,你可以清楚的看到场景中每一个对象是如何被逐步绘制出来的。

posted on 2007-04-02 23:42  CGDeveloper  阅读(499)  评论(0编辑  收藏  举报

导航