在Three.js中运行时隐藏网格面

在Three.js中运行时隐藏网格面,three.js,Three.js,我使用的是3.js57版本。我想在运行时隐藏选定的面。这在three.js中可能吗 感谢和问候确实这是可能的,您需要查看Raycaster库,以下是高级步骤 将鼠标单击坐标取消投影到三维场景中 将光线投射到场景中并返回碰撞对象的相交阵列 此相交对象将受影响的面和面索引作为参数 碰撞时,将面@faceIndex透明度设置为0 请查看以下文档页面: 这是一个开始的例子: 编辑: 好的,那么为了隐藏脸部,你可以在另一个帖子上看到一个顶点: 要点是您有一个多材质对象,第一个材质是默认材质,第二

我使用的是3.js57版本。我想在运行时隐藏选定的面。这在three.js中可能吗


感谢和问候

确实这是可能的,您需要查看Raycaster库,以下是高级步骤

  • 将鼠标单击坐标取消投影到三维场景中
  • 将光线投射到场景中并返回碰撞对象的相交阵列
  • 此相交对象将受影响的面和面索引作为参数
  • 碰撞时,将面@faceIndex透明度设置为0
请查看以下文档页面:

这是一个开始的例子:

编辑: 好的,那么为了隐藏脸部,你可以在另一个帖子上看到一个顶点:


要点是您有一个多材质对象,第一个材质是默认材质,第二个材质是完全不透明的。然后,当相交时,将面设置为使用第二个materialIndex。无论如何,上面的链接应该可以完成这项工作。投票表决该答复。:)

谢谢你的回复。我看到了你提到的两个链接。它可以找到检测到的人脸。但我需要隐藏选定的脸。您好,您有机会尝试我最近的编辑吗?我很想知道结果如何。