dist/bas.module.js
function createDistanceAnimationMaterial(sourceMaterial) {
    return new DistanceAnimationMaterial({
      uniforms: sourceMaterial.uniforms,
      defines: sourceMaterial.defines,
      vertexFunctions: sourceMaterial.vertexFunctions,
      vertexParameters: sourceMaterial.vertexParameters,
      vertexInit: sourceMaterial.vertexInit,
      vertexPosition: sourceMaterial.vertexPosition
    });
  }
function createDistanceAnimationMaterial(sourceMaterial) {
    return new DistanceAnimationMaterial({
      uniforms: sourceMaterial.uniforms,
      defines: sourceMaterial.defines,
      vertexFunctions: sourceMaterial.vertexFunctions,
      vertexParameters: sourceMaterial.vertexParameters,
      vertexInit: sourceMaterial.vertexInit,
      vertexPosition: sourceMaterial.vertexPosition
    });
  }
function createDistanceAnimationMaterial ( sourceMaterial ) { return new DistanceAnimationMaterial ( { uniforms : sourceMaterial . uniforms , defines : sourceMaterial . defines , vertexFunctions : sourceMaterial . vertexFunctions , vertexParameters : sourceMaterial . vertexParameters , vertexInit : sourceMaterial . vertexInit , vertexPosition : sourceMaterial . vertexPosition } ) ; }
Create a THREE.BAS.DistanceAnimationMaterial for shadows from a THREE.PointLight by copying relevant shader chunks.
Uniform values must be manually synced between the source material and the distance material.

@see {@link http://three-bas-examples.surge.sh/examples/shadows/}

@param {THREE.BAS.BaseAnimationMaterial} sourceMaterial Instance to get the shader chunks from.
@returns {THREE.BAS.DistanceAnimationMaterial}
Create a THREE . BAS . DistanceAnimationMaterial for shadows from a THREE . PointLight by copying relevant shader chunks . Uniform values must be manually synced between the source material and the distance material .