我用 OcclusionQueriesNV 这个扩展来做遮挡查询然后绘制可见的部分 
我再一帧中分别做了两次绘制,一次是绘制可见物,一次是绘制所有物体来进行查询
但是在我做查询绘制的时候使用物体的包围盒来做的(为了提高效率)
因此就会出现物体和包围盒交替出现在屏幕的情况 
请问这个问题如何解决 还有是不是我对OcclusionQueriesNV这个扩展的理解有误,我觉得如果要进行查询是
要把希望查询的东西绘制一遍的,如果不需要绘制就能查询应该怎么做

解决方案 »

  1.   

    因此就会出现物体和包围盒交替出现在屏幕的情况 
    ============
    虽然我没用过这个扩展,但是按你说的情况,应该是两次都交给GPU处理了,和你的目的好像不大一样,仔细读读他的Doc吧
    如果不需要绘制就能查询应该怎么做
    ============================
    先交给CPU做了,场景上来说,很大一部分工作是在offline editing的时候就规划好的~比如著名的BSP等等~运行时也是先用CPU的程序判断哪些该画,哪些不该等等,比如Frustum culling等等~
      

  2.   

    要屏蔽culling box的那个pass的话,可以用一些变通的手法,比如设置下z buffer的Func或Render Target之类的,总之让他不被画出来就好了~不过这样好像不是你的本意
      

  3.   

    查询的时候要关闭frame buffer的写入。看看文档就知道了。