2015-07-02 96 views
2

我想用另一個3D場景來遮罩3D場景。我設法得到它與普通THREE.Mesh對象時,如下圖所示:Three.js使用ImmediateRenderObject後渲染沒有被清除

Mask working

主場景有一堆小聚球。面具場景有一個紅色的立方體。這兩個場景都作爲紋理傳遞給自定義着色器,該自定義着色器檢查蒙版上的紅色像素並繪製主要像素。

它的工作原理。這裏是一個小提琴:http://jsfiddle.net/at4rumn6/3/

// please check source on jsfiddle 

-

但是,如果我更換球的一串由斑點像Marching Cubes例子,它停止工作。問題如下:

Mask error

好像自己是不是在渲染得到清除。這可能與THREE.ImmediateRenderObject有關,但我不明白它在做什麼。這看起來像是一個非常具體的案例,我可能在圖書館裏發現了一個限制。或者,也許我只是做錯了什麼。

這裏是另一個小提琴顯示錯誤:http://jsfiddle.net/Lwm93rxr/2/

有沒有辦法清除緩衝區,並得到我的面具,不受其他任何場景「灰塵」的工作?

+0

THREE.WebGLRenderer 71時,Chrome 43,Mac OS X中的優勝美地 – imbrizi

+0

開業GitHub上https://github.com/mrdoob/three問題。 JS /問題/ 6783 – imbrizi

回答