A-FRAME +手机)触摸如何通过手指手势向上或向下移动

时间:2017-05-22 04:07:00

标签: aframe

我的产品在下面(请通过手机查看)

https://pano-mixer360.com/viewer/sphere/11/43

在向左或向右移动的情况下, 通过手指手势触摸移动效果很好。

但是, 在向上或向下移动的情况下, 通过手指手势触摸移动不起作用!这是问题。

我该怎么办?

使用

A-Frame0.5.0
Safari iOS 10

我的代码

<a-scene>
  <a-entity position="0 0 0">
    <a-entity>
      <a-entity camera="userHeight: 1.6" look-controls>
      <a-entity id="myCursor" cursor="fuse:true maxDistance:30; timeout:500;" scale="0.05 0.05 0.05" position="0 0 -1" geometry="primitive: ring" material="color: #00ff00; shader: flat; opacity:0.5">
        <a-animation begin="cursor-fusing" easing="ease-in" attribute="scale" fill="none" from="0.3 0.3 0.3" to="0.01 0.01 0.01"></a-animation>
      </a-entity>
    </a-entity>
  </a-entity>
  <a-sky src="test.jpeg" rotation="0 0 0"></a-sky>
</a-scene>
顺便说一下, 我试过克隆look-controls.js

https://github.com/aframevr/aframe/blob/master/src/components/look-controls.js

和第#L173行替换为

x: radToDeg(hmdEuler.x) + radToDeg(yawObject.rotation.x),

使用yawObject。

但它现在正在运作。 因为触摸移动监听器(#L301-L313)没有设置rotaion.x!

也许 我应该计算rotation.x

yawObject.rotation.x = ????

但我不明白如何计算。

请帮帮我

1 个答案:

答案 0 :(得分:0)

问题是关于pitchObject而不是yawObject,将代码放入您的look-controls.js克隆中的onTouchMove函数

var deltaX = 2 * Math.PI * (evt.touches[0].pageY - this.touchStart.y) / canvas.clientHeight;
this.pitchObject.rotation.x -= deltaX * 0.5;

this image can help you understand