Я работаю с моделью 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>
Итак, в компоненте подмножества модели я пытаюсьухватить объектную сцену, чтобы я мог ее клонировать.Вот как я получаю доступ к 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 выдает следующее:
Итак, когда я пытаюсь получить доступ к «OSG_Scene» из data.target.object3d.children [0], я получаю «undefined» в console.log.
Кроме того, почему я не могу получить "OSG_Scene" ни одним из этих методов -
- data.target.getObject3D ('Scene') ИЛИ
- data.target.getobjectbyname ("OSG_Scene")
Большое спасибо за вашу помощь.