如何在three.js场景中隐藏和显示一个对象

8

我的场景中有一个由球体组成的对象,并且我有一个隐藏和显示按钮。
我的程序流程如下。例如,当我选择其中一个球体(我使用射线投射来选择一个球体),然后点击隐藏按钮,这个球体将被隐藏。之后再次点击显示按钮,它就会出现。但我不知道该怎么做。
我使用了three.js来创建我的场景。
而我没有找到任何关于我的问题的示例。我该怎么做?
感谢您的帮助。


1
每个 Object3D 都有一个 .visible 属性。自 (r84) https://threejs.org/docs/index.html?q=object3#Reference/Core/Object3D - gaitat
实际上,我想要一个例子。因为我无法想象。 - Şeyma Yaman
@ŞeymaYaman 你想要什么样的示例?如何将属性设置为 truefalse - prisoner849
小的jsfiddle示例。我尝试编写但是出现了错误。 - Şeyma Yaman
这就是为什么最好展示你已经尝试过的内容(jsfiddle,codepen等)。 - prisoner849
我根据这个例子编写了我的代码:https://github.com/josdirksen/learning-threejs/blob/master/chapter-09/02-selecting-objects.html - Şeyma Yaman
2个回答

10

在three.js中,可以简单地使用对象遍历方法隐藏网格。在我的代码中,根据其名称隐藏对象。

object.traverse ( function (child) {
    if (child instanceof THREE.Mesh) {
        child.visible = true;
    }
});

以下是对象显示/隐藏选项的工作示例:http://jsfiddle.net/ddbTy/287/

我认为这应该会有所帮助,...


谢谢。这对我非常有帮助。 - Şeyma Yaman

7

试试这个:

object.visible = false; //Invisible
object.visible = true;  //Visible

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接