未验证 提交 cfa04293 编写于 作者: M Mr.doob 提交者: GitHub

Merge pull request #19585 from WestLangley/dev_pointer_lock_2

PointerLockControls: add min/max polar angle
......@@ -16,6 +16,11 @@ THREE.PointerLockControls = function ( camera, domElement ) {
this.domElement = domElement;
this.isLocked = false;
// Set to constrain the pitch of the camera
// Range is 0 to Math.PI radians
this.minPolarAngle = 0; // radians
this.maxPolarAngle = Math.PI; // radians
//
// internals
//
......@@ -44,7 +49,7 @@ THREE.PointerLockControls = function ( camera, domElement ) {
euler.y -= movementX * 0.002;
euler.x -= movementY * 0.002;
euler.x = Math.max( - PI_2, Math.min( PI_2, euler.x ) );
euler.x = Math.max( PI_2 - scope.maxPolarAngle, Math.min( PI_2 - scope.minPolarAngle, euler.x ) );
camera.quaternion.setFromEuler( euler );
......
......@@ -14,6 +14,9 @@ export class PointerLockControls extends EventDispatcher {
isLocked: boolean;
minPolarAngle: number;
maxPolarAngle: number;
connect(): void;
disconnect(): void;
dispose(): void;
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册