 #pragma glslify: octMapUVToDir = require(./OctMapUVToDir)
 #pragma glslify: encodeRGBM = require(../local_modules/glsl-rgbm/encode)
 #pragma glslify: decodeRGBM = require(../local_modules/glsl-rgbm/decode)
-#pragma glslify: random = require(glsl-random/lowp)
 
 varying vec2 vTexCoord;
 uniform float uTextureSize;

      break;
    }
    vec2 Xi = Hammersley( i, uNumSamples );
    vec3 H = ImportanceSampleGGX( Xi, Roughness, N );
    vec3 L = 2.0 * dot( V, H ) * H - V;
    float NoL = saturate( dot( N, L ) );
    if( NoL > 0.0 ) {

  return texture2D(uSource, uv);
}

vec3 PrefilterEnvMap( float roughness, vec3 R ) {
  vec3 N = R;
  vec3 V = R;
  vec3 PrefilteredColor = vec3(0.0);
