1
0

displacement.swsl 595 B

123456789101112131415161718
  1. uniform sampler2D displacementMap;
  2. uniform highp float displacementSize;
  3. uniform highp vec4 displacementUV;
  4. varying highp vec2 displacementUVOut;
  5. void vertex() {
  6. displacementUVOut = mix(displacementUV.xy, displacementUV.zw, tCoord2);
  7. }
  8. void fragment() {
  9. highp vec4 displacementSample = texture2D(displacementMap, displacementUVOut);
  10. highp vec2 displacementValue = (displacementSample.xy - vec2(128.0 / 255.0)) / (1.0 - 128.0 / 255.0);
  11. COLOR = zTexture(UV + displacementValue * TEXTURE_PIXEL_SIZE * displacementSize * vec2(1.0, -1.0));
  12. COLOR.a *= displacementSample.a;
  13. }