Определите направление взгляда зрителя по времени

Я пытаюсь восстановить направление просмотра зрителя при воспроизведении 360-градусного видео на платформе aframe. Результатом может быть среднее значение FOV (поле обзора) ... Кто-нибудь знает, как это сделать? Пожалуйста помогите!!


person W.Fre    schedule 04.03.2017    source источник


Ответы (1)


Если вы начнете с примера панорамы с домашней страницы A-Frame, вы можете изменить его следующим образом, чтобы получить угол:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Panorama</title>
    <meta name="description" content="Panorama — A-Frame">
    <script src='//cdnjs.cloudflare.com/ajax/libs/aframe/0.5.0/aframe.js'></script>

    <script>
      AFRAME.registerComponent('theta', {
          tick: function (time, timeDelta) {
            var camera = this.el.object3D.children[0]
            vector = camera.getWorldDirection();
            theta = Math.atan2(vector.x,vector.z);
            console.log(theta);
          },
      });
    </script>

  </head>
  <body>
    <a-scene>
      <a-camera theta></a-camera>
      <a-sky src="puydesancy.jpg" rotation="0 -130 0"></a-sky>
    </a-scene>
  </body>
</html>

(через Three.js: получить направление в на которую смотрит камера)

person dirkk0    schedule 04.03.2017