dispose method

void dispose()

Implementation

void dispose() {
	final shaders = this.shaders;
	shaders.forEach((material,shader ) {
      shader as WebGLParameters?;
      material as Material;
		//material.onBeforeCompile;
		material.defines?.remove('USE_CSM');
		material.defines?.remove('CSM_CASCADES');
		material.defines?.remove('CSM_FADE');

		if ( shader != null ) {
			shader.uniforms?.remove('CSM_cascades');
			shader.uniforms?.remove('cameraNear');
			shader.uniforms?.remove('shadowFar');
		}

		material.needsUpdate = true;
	} );
	shaders.clear();
}