在THREE.js中使用鼠标转身

时间:2016-06-15 13:40:50

标签: javascript three.js

感谢堆栈溢出社区帮助像我这样的许多成熟的编码器

现在在这里我的相机运动就像第一人一样,能够向前,向后,侧向移动并使用箭头键环视(旋转)。现在我想用鼠标添加外观,点击并拖动以侧向,上下看..我尝试了三个.js-pointlocker,firstperson controlls,但没有一个适合我的要求。无论如何,我可以尝试鼠标外观以及我现有的键盘动作吗?

我使用THREEx.Keyboardstate.js进行了来自stemkoshi的键盘移动

SELECT count(distinct barcode)  FROM (
select distinct a.Barcode <rest of query>
UNION
select distinct a.Barcode <rest of next query>
UNION ... )

1 个答案:

答案 0 :(得分:0)

更新(更简单!)

Working example (on CodePen).

  1. 一个。创建一个mousedown事件侦听器,将鼠标的初始位置(event.clientXevent.clientY)记录为startXstartY

    湾在mousedown回调中,添加mousemove事件侦听器。

    ℃。创建一个mouseup事件侦听器,删除mousemove侦听器。

  2. 一个。在mousemove回调中,记录新的鼠标位置newXnewY。通过camera.rotationnewX-startX的函数更新newY-startY。在链接的示例中,这看起来像:

    camera.rotation.x += newY-startY;
    camera.rotation.y += newX-startX;
    

    湾更新startX = newXstartY=newY