aframe 获取 object3d children
aframe get object3d children
我正在为一款游戏使用 gltf 模型。它被引用为 -
<a-asset-item id="orca1" src="../images/models/orca/scene.gltf"></a-asset-item>
然后访问为
<a-entity id="orca" position="-1 0.4 -40" gltf-model="#orca1"></a-entity>
和
<a-entity model-subset="target: #orca"></a-entity>
因此,在 model-subset 组件中,我试图获取 object3d 场景以便我可以克隆它。这是我在那里访问 object3d 的方式
AFRAME.registerComponent('model-subset', {
schema: {
target: { default: '', type: 'selector' }
},
init: function() {
var data = this.data;
var el = this.el;
console.log(data.target.object3D.children);
data.target.addEventListener('model-loaded', function(e) {
this.model = e.detail.model;
console.log(this.model)
})
}
})
我想了解的是 - 当我执行 data.target.object3D.children 时,我在控制台日志中得到以下信息 -
但是 e.detail.model 在控制台日志中给出了以下内容 -
因此,当我尝试从 data.target.object3d.children[0] 访问 "OSG_Scene" 时,我在 console.log 中得到了 "undefined"。
此外,为什么我无法通过这两种方法之一获得 "OSG_Scene" -
- data.target.getObject3D('Scene') 或
- data.target.getobjectbyname("OSG_Scene")
非常感谢您的帮助。
应该是data.target.getObject3D('mesh')
我正在为一款游戏使用 gltf 模型。它被引用为 -
<a-asset-item id="orca1" src="../images/models/orca/scene.gltf"></a-asset-item>
然后访问为
<a-entity id="orca" position="-1 0.4 -40" gltf-model="#orca1"></a-entity>
和
<a-entity model-subset="target: #orca"></a-entity>
因此,在 model-subset 组件中,我试图获取 object3d 场景以便我可以克隆它。这是我在那里访问 object3d 的方式
AFRAME.registerComponent('model-subset', {
schema: {
target: { default: '', type: 'selector' }
},
init: function() {
var data = this.data;
var el = this.el;
console.log(data.target.object3D.children);
data.target.addEventListener('model-loaded', function(e) {
this.model = e.detail.model;
console.log(this.model)
})
}
})
我想了解的是 - 当我执行 data.target.object3D.children 时,我在控制台日志中得到以下信息 -
但是 e.detail.model 在控制台日志中给出了以下内容 -
因此,当我尝试从 data.target.object3d.children[0] 访问 "OSG_Scene" 时,我在 console.log 中得到了 "undefined"。
此外,为什么我无法通过这两种方法之一获得 "OSG_Scene" -
- data.target.getObject3D('Scene') 或
- data.target.getobjectbyname("OSG_Scene")
非常感谢您的帮助。
应该是data.target.getObject3D('mesh')