當我渲染WebGL的對應一個汽車模型(日產GTX)複雜的場景(180項目)缺少三角形。然而,當我四處移動相機,它好像三角形人失蹤,的WebGL:移動相機
這些「失蹤三角」似乎在表面上隨機跳。這可能是深度緩衝區問題還是正常計算問題?我不知道。
不過,如果我放大模型的表面附近,所有的三角形在那裏。
有沒有人有這個問題?有小費嗎?!
當我渲染WebGL的對應一個汽車模型(日產GTX)複雜的場景(180項目)缺少三角形。然而,當我四處移動相機,它好像三角形人失蹤,的WebGL:移動相機
這些「失蹤三角」似乎在表面上隨機跳。這可能是深度緩衝區問題還是正常計算問題?我不知道。
不過,如果我放大模型的表面附近,所有的三角形在那裏。
有沒有人有這個問題?有小費嗎?!
我猜,你直接對的(或非常接近)實體網格之上的線框網格,這僅僅是一個深度緩衝問題。它在放大時起作用,因爲深度緩衝區的精確度在觀看平截頭體的近區域更高。
嘗試在直接在實體網格頂部上渲染線框疊加時,通過使用多邊形偏移量(或類似的片段着色器修改gl_FragDepth
)來調整屏幕空間深度。或者只是將它們在物體空間中移動得更遠。即到相機的距離影響的事情表明,它可能是一個緩衝精度問題的事實 -
當你懷疑一個深度緩衝的問題你可能是正確的。查看this question的答案以獲得可能的解決方案。
謝謝你,我改變了zNear參數的投影矩陣,從0.1到10,問題就消失了! – Diego 2011-06-06 01:07:51