【问题标题】:[three.js toggle through models using GUI[three.js 使用 GUI 切换模型
【发布时间】: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


【解决方案1】:

您应该遍历场景,检查子对象是否是您想要的对象,然后打开/关闭可见性。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-08-11
  • 1970-01-01
  • 2013-07-09
  • 2017-11-10
  • 2021-10-09
  • 2015-01-14
  • 2013-09-07
相关资源
最近更新 更多