提交 31fbde2f 编写于 作者: M Mr.doob

Web*RManager: Do not modify camera when not presenting.

上级 1653c9a6
......@@ -1153,7 +1153,7 @@ function WebGLRenderer( parameters ) {
if ( camera.parent === null ) camera.updateMatrixWorld();
if ( vr.enabled ) {
if ( vr.enabled && vr.isPresenting() ) {
camera = vr.getCamera( camera );
......
......@@ -285,15 +285,6 @@ function WebVRManager( renderer ) {
var userHeight = referenceSpaceType === 'local-floor' ? 1.6 : 0;
if ( isPresenting() === false ) {
camera.position.set( 0, userHeight, 0 );
camera.rotation.set( 0, 0, 0 );
return camera;
}
device.depthNear = camera.near;
device.depthFar = camera.far;
......
......@@ -199,38 +199,32 @@ function WebXRManager( renderer, gl ) {
this.getCamera = function ( camera ) {
if ( isPresenting() ) {
var parent = camera.parent;
var cameras = cameraVR.cameras;
var parent = camera.parent;
var cameras = cameraVR.cameras;
updateCamera( cameraVR, parent );
updateCamera( cameraVR, parent );
for ( var i = 0; i < cameras.length; i ++ ) {
for ( var i = 0; i < cameras.length; i ++ ) {
updateCamera( cameras[ i ], parent );
updateCamera( cameras[ i ], parent );
}
// update camera and its children
camera.matrixWorld.copy( cameraVR.matrixWorld );
var children = camera.children;
}
for ( var i = 0, l = children.length; i < l; i ++ ) {
// update camera and its children
children[ i ].updateMatrixWorld( true );
camera.matrixWorld.copy( cameraVR.matrixWorld );
}
var children = camera.children;
setProjectionFromUnion( cameraVR, cameraL, cameraR );
for ( var i = 0, l = children.length; i < l; i ++ ) {
return cameraVR;
children[ i ].updateMatrixWorld( true );
}
return camera;
setProjectionFromUnion( cameraVR, cameraL, cameraR );
return cameraVR;
};
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册