如何在three.js中自定义指针锁定控件



基于指针锁定控件示例
http://pages.cs.wisc.edu/~lizy/mrdoob-three.js-ef5f05d/examples/sisc_controls_pointerlock.html

如何修改此示例,以便我们可以使用键上下移动,并使用鼠标滚轮或键放大和缩小?

关于自定义指针锁定控件的任何其他提示也很受欢迎。

使用开关来识别正在按下的键。添加相应的eventListener。

Keydown

var onKeyDown = function ( event ) {
    switch ( event.keyCode ) {
        case 38: // up
        case 87: // w
            moveForward = true;
            break;
        ...
    }
};
document.addEventListener( 'keydown', onKeyDown, false );

KeyUp

var onKeyUp = function ( event ) {
    switch( event.keyCode ) {
        case 38: // up
        case 87: // w
            moveForward = false;
            break;
        ...
    }
};
document.addEventListener( 'keyup', onKeyUp, false );

鼠标滚轮

var onMouseWheel = function ( event ) {
    ...
};
this.domElement.addEventListener( 'mousewheel', onMouseWheel, false );
this.domElement.addEventListener( 'DOMMouseScroll', onMouseWheel, false ); // firefox

最新更新