javascript - Three.js - 如何在带有子对象的 Object3D 上使用 BoxHelper?

标签 javascript three.js

我想使用 THREE.BoxHelper 为具有子项的 Object3D 创建边界框。动机是我可以为对象渲染一个线框边界框,而框的面上没有对 Angular 线。查看 BoxHelper 的源代码,它似乎没有考虑对象的子项,这对我的应用程序来说是个问题,因为每个对象都有子项。

有没有办法让 BoxHelper 包含对象的子对象?或者,是否有使用 BoundingBoxHelper(确实包括子项)并在没有对 Angular 线的情况下渲染它的好方法?

最佳答案

如果你想为一个有 child 的对象创建一个THREE.BoxHelper,你可以使用这个模式:

// box helper   
boxHelper = new THREE.BoxHelper( parent );
boxHelper.material.color.set( 0xffffff );
scene.add( boxHelper );

在您的渲染循环中,您可能必须这样做:

boxHelper.update();

three.js r.85

关于javascript - Three.js - 如何在带有子对象的 Object3D 上使用 BoxHelper?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27322720/

相关文章:

javascript - JavaScript Live错误显示?

javascript - 在 Javascript 中设置 anchor 标签的文本

javascript - Three.js 旋转面向对象

Three.js GetWorldPosition()/localToWorld() 位置不正确?

javascript - 按字母顺序对无序列表进行排序

javascript - Meteor 用户更新时显示提醒

javascript - 修改公共(public) npm 包中的一些功能

javascript - 使用three.js,如何将EffectComposer 与OculusRiftEffect、VREffect 或VRRenderer 集成?

javascript - 使用 Three.js 更新地形几何

javascript - three.js - 使用 CanvasRenderer 提高性能 (FPS)