Sha256: 0f9d61d5e5ef0556dbacc3d4d3270a2c40c8a59b986204e221038a2ba64a7cd8

Contents?: true

Size: 1021 Bytes

Versions: 19

Compression:

Stored size: 1021 Bytes

Contents

uniform sampler2D image;
uniform float strength;
uniform vec2 repeat;

czm_material czm_getMaterial(czm_materialInput materialInput)
{
    czm_material material = czm_getDefaultMaterial(materialInput);

    vec2 st = materialInput.st;
    
    vec2 centerPixel = fract(repeat * st);
    float centerBump = texture2D(image, centerPixel).channel;
    
    float imageWidth = float(imageDimensions.x);
    vec2 rightPixel = fract(repeat * (st + vec2(1.0 / imageWidth, 0.0)));
    float rightBump = texture2D(image, rightPixel).channel;
    
    float imageHeight = float(imageDimensions.y);
    vec2 leftPixel = fract(repeat * (st + vec2(0.0, 1.0 / imageHeight)));
    float topBump = texture2D(image, leftPixel).channel;
    
    vec3 normalTangentSpace = normalize(vec3(centerBump - rightBump, centerBump - topBump, clamp(1.0 - strength, 0.1, 1.0)));
    vec3 normalEC = materialInput.tangentToEyeMatrix * normalTangentSpace;
 
    material.normal = normalEC;
    material.diffuse = vec3(0.01);
    
    return material;
}

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
cesium-1.24.0 app/assets/javascripts/Cesium/Shaders/Materials/BumpMapMaterial.glsl
cesium-1.23.0 app/assets/javascripts/Cesium/Shaders/Materials/BumpMapMaterial.glsl
cesium-1.18.0 app/assets/javascripts/Cesium/Shaders/Materials/BumpMapMaterial.glsl
cesium-1.17.0 app/assets/javascripts/Cesium/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.25.0 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.24.1 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.24.0 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.23.0 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.22.0 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.21.1 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.21 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.20.0 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.19.0 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.18.0 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.17.0 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.16.0 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.15.0 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.14.0 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl
cesium-0.13.2 app/assets/javascripts/Shaders/Materials/BumpMapMaterial.glsl