2016-08-15 22 views

Odpowiedz

11

Aby uzyskać pozycję kamery:

var pos = document.querySelector('#camera').getAttribute('position'); 

aby uzyskać pozycję światowego kamery, możemy przekształcić lokalną pozycję kamery:

var cameraEl = document.querySelector('#camera'); 
var worldPos = new THREE.Vector3(); 
worldPos.setFromMatrixPosition(cameraEl.object3D.matrixWorld); 
console.log(worldPos.x); 

Aby odsłuchać zmiany, należy użyć zdarzenia componentchanged:

cameraEl.addEventListener('componentchanged', function (evt) { 
    if (evt.detail.name !== 'position') { return; } 
    console.log(evt.detail.newData); 
}); 

więcej wydajnych może być ankieta

AFRAME.registerComponent('camera-listener', { 
    tick: function() { 
    var cameraEl = this.el.sceneEl.camera.el; 
    cameraEl.getAttribute('position'); 
    cameraEl.getAttribute('rotation'); 

    // Do something. 
    } 
}); 
+1

Super przydatnych dzięki. Życzenie A-ramka miał wszystkich listonoszy jako część dokumentacji – benbyford

+1

https://aframe.io/docs/0.4.0/core/entity.html#events – ngokevin

+0

@ngokevin jest aktualną pozycją videosfery możliwą do odzyskania? –