【发布时间】:2014-11-05 11:11:14
【问题描述】:
我的场景中有一些模型并使用 dat.gui 我希望能够切换不同的模型。
到目前为止,我已经尝试通过使用以下代码更改可见性打开/关闭来做到这一点:
var gui = new dat.GUI();
var controls = {
toggleObjects: function(){
g3white.traverse(function(child){child.visible = true;});
g3black.traverse(function(child){child.visible = false;});
}
};
gui.add(controls, 'toggleObjects');
但是,我不断收到破坏我的代码的错误:Uncaught TypeError: undefined is not a function
此外,我希望拥有 2 个以上的模型,然后单击一个按钮,模型会显示,而其他所有模型都被隐藏。
这是解决此问题的最佳/最简单方法还是我应该做的其他事情?
感谢任何帮助,我是一个 three.js 初学者。
【问题讨论】:
-
这很难说,但我猜 g3white、g3blac 或两者都没有定义“遍历”。如果您使用的是 chrome - 我建议您使用 DevTools 并启用中断未捕获的异常;按钮如下所示:(ii)
-
感谢您的回复!我已将两个对象的 traverse 定义为: g3white.traverse(function(child){ child.visible = true; });
标签: javascript three.js