updateUniforms method

void updateUniforms()

Implementation

void updateUniforms() {
	final far = math.min( data.camera.far, data.maxFar );
	final shaders = this.shaders;

	shaders.forEach((material,shader ) {
      shader as WebGLParameters?;
      material as Material;
		if ( shader != null ) {
			final uniforms = shader.uniforms;
			getExtendedBreaks( uniforms!['CSM_cascades']['value'] );
			uniforms['cameraNear']['value'] = data.camera.near;
			uniforms['shadowFar']['value'] = far;
		}

		if ( !fade && material.defines != null && material.defines!.containsKey('CSM_FADE')) {//'CSM_FADE' in material.defines
			//delete material.defines.CSM_FADE;
        material.defines?.remove('CSM_FADE');
			material.needsUpdate = true;
		} else if(fade && material.defines != null && !material.defines!.containsKey('CSM_FADE')) {
			material.defines!['CSM_FADE'] = '';
			material.needsUpdate = true;
		}
	});

}