UnpackDepthRGBAShader.js 690 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /**
  2. * Unpack RGBA depth shader
  3. * - show RGBA encoded depth as monochrome color
  4. */
  5. THREE.UnpackDepthRGBAShader = {
  6. uniforms: {
  7. "tDiffuse": { value: null },
  8. "opacity": { value: 1.0 }
  9. },
  10. vertexShader: [
  11. "varying vec2 vUv;",
  12. "void main() {",
  13. " vUv = uv;",
  14. " gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 );",
  15. "}"
  16. ].join( "\n" ),
  17. fragmentShader: [
  18. "uniform float opacity;",
  19. "uniform sampler2D tDiffuse;",
  20. "varying vec2 vUv;",
  21. "#include <packing>",
  22. "void main() {",
  23. " float depth = 1.0 - unpackRGBAToDepth( texture2D( tDiffuse, vUv ) );",
  24. " gl_FragColor = vec4( vec3( depth ), opacity );",
  25. "}"
  26. ].join( "\n" )
  27. };