|
@@ -9164,7 +9164,7 @@ Object.assign( Frustum.prototype, {
|
|
|
* @author mrdoob / http://mrdoob.com/
|
|
|
*/
|
|
|
|
|
|
-function WebGLShadowMap( _renderer, _shadows, _objects, maxTextureSize ) {
|
|
|
+function WebGLShadowMap( _renderer, _objects, maxTextureSize ) {
|
|
|
|
|
|
var _gl = _renderer.context,
|
|
|
_state = _renderer.state,
|
|
@@ -9247,12 +9247,12 @@ function WebGLShadowMap( _renderer, _shadows, _objects, maxTextureSize ) {
|
|
|
this.renderReverseSided = true;
|
|
|
this.renderSingleSided = true;
|
|
|
|
|
|
- this.render = function ( scene, camera ) {
|
|
|
+ this.render = function ( lights, scene, camera ) {
|
|
|
|
|
|
if ( scope.enabled === false ) return;
|
|
|
if ( scope.autoUpdate === false && scope.needsUpdate === false ) return;
|
|
|
|
|
|
- if ( _shadows.length === 0 ) return;
|
|
|
+ if ( lights.length === 0 ) return;
|
|
|
|
|
|
// Set GL state for depth map.
|
|
|
_state.disable( _gl.BLEND );
|
|
@@ -9264,9 +9264,9 @@ function WebGLShadowMap( _renderer, _shadows, _objects, maxTextureSize ) {
|
|
|
|
|
|
var faceCount;
|
|
|
|
|
|
- for ( var i = 0, il = _shadows.length; i < il; i ++ ) {
|
|
|
+ for ( var i = 0, il = lights.length; i < il; i ++ ) {
|
|
|
|
|
|
- var light = _shadows[ i ];
|
|
|
+ var light = lights[ i ];
|
|
|
var shadow = light.shadow;
|
|
|
var isPointLight = light && light.isPointLight;
|
|
|
|
|
@@ -9406,11 +9406,6 @@ function WebGLShadowMap( _renderer, _shadows, _objects, maxTextureSize ) {
|
|
|
|
|
|
}
|
|
|
|
|
|
- // Restore GL state.
|
|
|
- var clearColor = _renderer.getClearColor();
|
|
|
- var clearAlpha = _renderer.getClearAlpha();
|
|
|
- _renderer.setClearColor( clearColor, clearAlpha );
|
|
|
-
|
|
|
scope.needsUpdate = false;
|
|
|
|
|
|
};
|
|
@@ -20916,7 +20911,7 @@ function WebGLRenderer( parameters ) {
|
|
|
|
|
|
// shadow map
|
|
|
|
|
|
- var shadowMap = new WebGLShadowMap( _this, shadowsArray, objects, capabilities.maxTextureSize );
|
|
|
+ var shadowMap = new WebGLShadowMap( _this, objects, capabilities.maxTextureSize );
|
|
|
|
|
|
this.shadowMap = shadowMap;
|
|
|
|
|
@@ -21738,7 +21733,7 @@ function WebGLRenderer( parameters ) {
|
|
|
|
|
|
if ( _clippingEnabled ) _clipping.beginShadows();
|
|
|
|
|
|
- shadowMap.render( scene, camera );
|
|
|
+ shadowMap.render( shadowsArray, scene, camera );
|
|
|
|
|
|
lights.setup( lightsArray, shadowsArray, camera );
|
|
|
|