我正在尝试使用 thee.js 仅更新 zbuffer(我正在使用preserveDrawingBuffer 来创建跟踪效果)。 然而,我找不到任何方法只用标准 Material 写入 zbuffer,到目前为止我已经尝试过:
- 将 Material 的
visible
设置为 false,这会停止对象渲染。 - 将 Material 的
不透明度
设置为 0.0,这意味着不会渲染任何内容。
是否有“标准”方法可以做到这一点,或者我是否需要使用自定义片段着色器?
最佳答案
您只能使用以下模式渲染到深度缓冲区。
renderer.context.colorMask( false, false, false, false ); // don't update color buffer
renderer.render( scene1, camera ); // first scene
renderer.context.colorMask( true, true, true, true );
renderer.render( scene2, camera ); // second scene
三.js r.71
关于three.js - 如何仅使用 Three.js 写入 zbuffer,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31515966/