anchor.diff:  uniform mat4 lightProj;
   uniform mat4 lightView; 
   uniform mat3 lightRot;
  +uniform vec3 lightPos;
   const mat4 offsetMat = mat4(0.5, 0.0, 0.0, 0.0, 0.0, 0.5, 0.0, 0.0, 0.0, 0.0, 0.5, 0.0, 0.5, 0.5, 0.5, 1.0);
   varying highp vec3 vNormal;
   varying highp vec4 vPosition;
  
positive.code:   sceneShader.uniform(ctx, Semantics.projectionMat, projMat.storage);
    sceneShader.uniform(ctx, "lightView", lightView.storage);
    sceneShader.uniform(ctx, "lightProj", lightProj.storage);
    ctx.activeTexture(gl.TEXTURE0);
    ctx.bindTexture(lightDepthTexture.target, lightDepthTexture.data);
    sceneShader.uniform(ctx, "depthMapping", 0);
  
negative.code: attribute highp vec3 aNormal;
  attribute highp vec3 aPosition;
  void main(){
      vPosition = lightView * uModelMat * vec4(aPosition, 1.0);
      gl_Position = lightProj * vPosition;
  }
  """;
  
  const depthMapFS = """
  void main(){
      float linearDepth = length(vPosition) * LinearDepthConstant;
      gl_FragColor = pack(linearDepth);
  }
  """;
  
  