如何从组件中获取场景中的所有对象?

时间:2016-10-27 00:23:08

标签: aframe

在组件中获取场景中所有对象的正确方法是什么?

例如,如果我需要光线投射所有内容。

AFRAME.registerComponent('foo', {
  init: function () {
    var el = this.el;
    // Get all objects in scene?
  }
});

1 个答案:

答案 0 :(得分:1)

你可以抓住场景,然后从那里抓住所有孩子。 https://aframe.io/docs/0.3.0/core/entity.html#sceneel

AFRAME.registerComponent('foo', {
  init: function () {
    var allObjects = this.el.sceneEl.object3D.children;
  }
});
  • this:组件实例
  • el:<a-entity>元素,该组件已附加到
  • sceneEl:<a-scene>元素
  • object3D:three.js场景对象
  • children:three.js所有场景对象