|
@@ -128,6 +128,9 @@ THREE.WebGLShadowMap = function ( _renderer, _lights, _objects ) {
|
|
|
|
|
|
var light = _lights[ i ];
|
|
|
|
|
|
+ // save the existing viewport so it can be restored later
|
|
|
+ _renderer.getViewport( _vector4 );
|
|
|
+
|
|
|
if ( light instanceof THREE.PointLight ) {
|
|
|
|
|
|
faceCount = 6;
|
|
@@ -226,9 +229,6 @@ THREE.WebGLShadowMap = function ( _renderer, _lights, _objects ) {
|
|
|
_lightPositionWorld.setFromMatrixPosition( light.matrixWorld );
|
|
|
shadowCamera.position.copy( _lightPositionWorld );
|
|
|
|
|
|
- // save the existing viewport so it can be restored later
|
|
|
- _renderer.getViewport( _vector4 );
|
|
|
-
|
|
|
_renderer.setRenderTarget( shadowMap );
|
|
|
_renderer.clear();
|
|
|
|
|
@@ -321,6 +321,7 @@ THREE.WebGLShadowMap = function ( _renderer, _lights, _objects ) {
|
|
|
|
|
|
}
|
|
|
|
|
|
+ _renderer.setViewport( _vector4.x, _vector4.y, _vector4.z, _vector4.w );
|
|
|
}
|
|
|
|
|
|
// restore GL state
|
|
@@ -337,8 +338,6 @@ THREE.WebGLShadowMap = function ( _renderer, _lights, _objects ) {
|
|
|
|
|
|
}
|
|
|
|
|
|
- _renderer.setViewport( _vector4.x, _vector4.y, _vector4.z, _vector4.w );
|
|
|
-
|
|
|
_renderer.resetGLState();
|
|
|
|
|
|
scope.needsUpdate = false;
|