Buckets:
ktongue/docker_container / simsite /frontend /node_modules /three /examples /jsm /shaders /DOFMipMapShader.js
| /** | |
| * Depth-of-field shader using mipmaps | |
| * - from Matt Handley @applmak | |
| * - requires power-of-2 sized render target with enabled mipmaps | |
| */ | |
| const DOFMipMapShader = { | |
| name: 'DOFMipMapShader', | |
| uniforms: { | |
| 'tColor': { value: null }, | |
| 'tDepth': { value: null }, | |
| 'focus': { value: 1.0 }, | |
| 'maxblur': { value: 1.0 } | |
| }, | |
| vertexShader: /* glsl */` | |
| varying vec2 vUv; | |
| void main() { | |
| vUv = uv; | |
| gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); | |
| }`, | |
| fragmentShader: /* glsl */` | |
| uniform float focus; | |
| uniform float maxblur; | |
| uniform sampler2D tColor; | |
| uniform sampler2D tDepth; | |
| varying vec2 vUv; | |
| void main() { | |
| vec4 depth = texture2D( tDepth, vUv ); | |
| float factor = depth.x - focus; | |
| vec4 col = texture2D( tColor, vUv, 2.0 * maxblur * abs( focus - depth.x ) ); | |
| gl_FragColor = col; | |
| gl_FragColor.a = 1.0; | |
| }` | |
| }; | |
| export { DOFMipMapShader }; | |
Xet Storage Details
- Size:
- 918 Bytes
- Xet hash:
- 4ccb2fbab8445a792a1ade288876113d34d41001b711d7f248e5b7f25950bf6a
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.