shadowMapFragment.fx 746 B

12345678910111213141516171819202122
  1. float depthSM = vDepthMetricSM;
  2. #if SM_DEPTHCLAMP == 1
  3. #if SM_USEDISTANCE == 1
  4. depthSM = clamp(((length(vPositionWSM - lightDataSM) + depthValuesSM.x) / (depthValuesSM.y)) + biasAndScaleSM.x, 0.0, 1.0);
  5. #else
  6. depthSM = clamp(((zSM + depthValuesSM.x) / (depthValuesSM.y)) + biasAndScaleSM.x, 0.0, 1.0);
  7. #endif
  8. gl_FragDepth = depthSM;
  9. #elif SM_USEDISTANCE == 1
  10. depthSM = (length(vPositionWSM - lightDataSM) + depthValuesSM.x) / (depthValuesSM.y) + biasAndScaleSM.x;
  11. #endif
  12. #if SM_ESM == 1
  13. depthSM = clamp(exp(-min(87., biasAndScaleSM.z * depthSM)), 0., 1.);
  14. #endif
  15. #if SM_FLOAT == 1
  16. gl_FragColor = vec4(depthSM, 1.0, 1.0, 1.0);
  17. #else
  18. gl_FragColor = pack(depthSM);
  19. #endif