Buckets:
ktongue/docker_container / simsite /frontend /node_modules /three /examples /jsm /shaders /RGBShiftShader.js
| /** | |
| * RGB Shift Shader | |
| * Shifts red and blue channels from center in opposite directions | |
| * Ported from https://web.archive.org/web/20090820185047/http://kriss.cx/tom/2009/05/rgb-shift/ | |
| * by Tom Butterworth / https://web.archive.org/web/20090810054752/http://kriss.cx/tom/ | |
| * | |
| * amount: shift distance (1 is width of input) | |
| * angle: shift angle in radians | |
| */ | |
| const RGBShiftShader = { | |
| name: 'RGBShiftShader', | |
| uniforms: { | |
| 'tDiffuse': { value: null }, | |
| 'amount': { value: 0.005 }, | |
| 'angle': { value: 0.0 } | |
| }, | |
| vertexShader: /* glsl */` | |
| varying vec2 vUv; | |
| void main() { | |
| vUv = uv; | |
| gl_Position = projectionMatrix * modelViewMatrix * vec4( position, 1.0 ); | |
| }`, | |
| fragmentShader: /* glsl */` | |
| uniform sampler2D tDiffuse; | |
| uniform float amount; | |
| uniform float angle; | |
| varying vec2 vUv; | |
| void main() { | |
| vec2 offset = amount * vec2( cos(angle), sin(angle)); | |
| vec4 cr = texture2D(tDiffuse, vUv + offset); | |
| vec4 cga = texture2D(tDiffuse, vUv); | |
| vec4 cb = texture2D(tDiffuse, vUv - offset); | |
| gl_FragColor = vec4(cr.r, cga.g, cb.b, cga.a); | |
| }` | |
| }; | |
| export { RGBShiftShader }; | |
Xet Storage Details
- Size:
- 1.12 kB
- Xet hash:
- aee62d26577c9bdf72ccfd118b48b22c245a0c67591207d3c65d3cc2ff0ff7e9
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.