在Babylon.js中可以使用透明对象遮挡对象

时间:2019-05-04 12:43:36

标签: babylonjs webxr

我正在使用Babylon.js开发AR应用程序。我需要使用透明网格将虚拟对象隐藏在真实对象之后,如关于Three.js的问题所描述的:three.js transparent object occlusion

是否可以用Babylon.js做类似的事情,但我一直无法弄清楚?

1 个答案:

答案 0 :(得分:1)

当然,您可以使用网格来遮挡另一个网格的各个部分,只需要在渲染前后关闭并打开网格(遮挡物)即可。

occluderMesh.onBeforeRenderObservable.add(() => engine.setColorWrite(false));
occluderMesh.onAfterRenderObservable.add(() => engine.setColorWrite(true));

检查以下示例:https://playground.babylonjs.com/#AAM6LK