UNPKG

three

Version:

JavaScript 3D library

51 lines (31 loc) 971 B
export default /* glsl */` #if DEPTH_PACKING == 3200 uniform float opacity; #endif #include <common> #include <packing> #include <uv_pars_fragment> #include <map_pars_fragment> #include <alphamap_pars_fragment> #include <logdepthbuf_pars_fragment> #include <clipping_planes_pars_fragment> varying vec2 vHighPrecisionZW; void main() { #include <clipping_planes_fragment> vec4 diffuseColor = vec4( 1.0 ); #if DEPTH_PACKING == 3200 diffuseColor.a = opacity; #endif #include <map_fragment> #include <alphamap_fragment> #include <alphatest_fragment> #include <logdepthbuf_fragment> // Higher precision equivalent of gl_FragCoord.z. This assumes depthRange has been left to its default values. float fragCoordZ = 0.5 * vHighPrecisionZW[0] / vHighPrecisionZW[1] + 0.5; #if DEPTH_PACKING == 3200 gl_FragColor = vec4( vec3( 1.0 - fragCoordZ ), opacity ); #elif DEPTH_PACKING == 3201 gl_FragColor = packDepthToRGBA( fragCoordZ ); #endif } `;