在Aframe 0.8中初始相机旋转时方向不正确

时间:2018-10-15 11:12:02

标签: aframe

在Aframe 0.8之前,您可以给相机进行初始旋转。现在您不能了,而是鼓励您设置摄影机装备(外部实体)并指定其位置和旋转角度。现在的问题是您的运动和旋转方向是错误的平面。您不再沿着场景的地板移动,而是沿着相机的新旋转方向移动。在Aframe 0.7中,相机的初始旋转不会影响您的移动平面。

链接到更多决策信息:https://github.com/aframevr/aframe/issues/3462

工作:https://glitch.com/~aframe-0-7-camera-rotation

  <a-camera position="3 -2 0" rotation="30 45 0"></a-camera>

不起作用:https://glitch.com/~aframe-0-8-camera-rotation

  <a-entity position="3 -2 0" rotation="30 45 0">
    <a-camera></a-camera>
  </a-entity>

(在两个方向上都向前推,可以看到不同的运动平面)

获得与以前相同的行为的适当方法是什么?

1 个答案:

答案 0 :(得分:1)

这可能是hacky,但似乎可行:

在PC上时,外观控件(内置在相机基本元素中)基于两个对象yawObject和pitchObject旋转相机。源代码片段here

如果您尝试设置这些对象的旋转值-似乎可以正常工作而没有任何伤害(以任何方式约束相机)。

var el = document.querySelector("a-camera")
el.components["look-controls"].pitchObject.rotation.x = 0.7
el.components["look-controls"].yawObject.rotation.y = 0.8

在我的fiddle

中查看