UNPKG

kepler.gl

Version:

kepler.gl is a webgl based application to visualize large scale location data in the browser

10 lines (9 loc) 3.22 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; // SPDX-License-Identifier: MIT // Copyright contributors to the kepler.gl project var _default = exports["default"] = "#version 300 es\n#define SHADER_NAME raster-mesh-layer-fs\n\nprecision highp float;\n\nuniform bool hasTexture;\n\nuniform bool flatShading;\nuniform float opacity;\n\nin vec2 vTexCoord;\nin vec3 cameraPosition;\nin vec3 normals_commonspace;\nin vec4 position_commonspace;\nin vec4 vColor;\n\nout vec4 fragColor;\n\nvoid main(void) {\n geometry.uv = vTexCoord;\n vec4 image;\n DECKGL_CREATE_COLOR(image, vTexCoord);\n\n DECKGL_MUTATE_COLOR(image, vTexCoord);\n\n vec3 normal;\n if (flatShading) {\n\n// This is necessary because\n// headless.gl reports the extension as\n// available but does not support it in\n// the shader.\n#ifdef DERIVATIVES_AVAILABLE\n normal = normalize(cross(dFdx(position_commonspace.xyz), dFdy(position_commonspace.xyz)));\n#else\n normal = vec3(0.0, 0.0, 1.0);\n#endif\n } else {\n normal = normals_commonspace;\n }\n\n vec3 lightColor = lighting_getLightColor(image.rgb, cameraPosition, position_commonspace.xyz, normal);\n fragColor = vec4(lightColor, opacity);\n\n DECKGL_FILTER_COLOR(fragColor, geometry);\n}\n"; //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmFzdGVyL3Jhc3Rlci1tZXNoLWxheWVyL3Jhc3Rlci1tZXNoLWxheWVyLXdlYmdsMi5mcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5leHBvcnQgZGVmYXVsdCBgXFxcbiN2ZXJzaW9uIDMwMCBlc1xuI2RlZmluZSBTSEFERVJfTkFNRSByYXN0ZXItbWVzaC1sYXllci1mc1xuXG5wcmVjaXNpb24gaGlnaHAgZmxvYXQ7XG5cbnVuaWZvcm0gYm9vbCBoYXNUZXh0dXJlO1xuXG51bmlmb3JtIGJvb2wgZmxhdFNoYWRpbmc7XG51bmlmb3JtIGZsb2F0IG9wYWNpdHk7XG5cbmluIHZlYzIgdlRleENvb3JkO1xuaW4gdmVjMyBjYW1lcmFQb3NpdGlvbjtcbmluIHZlYzMgbm9ybWFsc19jb21tb25zcGFjZTtcbmluIHZlYzQgcG9zaXRpb25fY29tbW9uc3BhY2U7XG5pbiB2ZWM0IHZDb2xvcjtcblxub3V0IHZlYzQgZnJhZ0NvbG9yO1xuXG52b2lkIG1haW4odm9pZCkge1xuICBnZW9tZXRyeS51diA9IHZUZXhDb29yZDtcbiAgdmVjNCBpbWFnZTtcbiAgREVDS0dMX0NSRUFURV9DT0xPUihpbWFnZSwgdlRleENvb3JkKTtcblxuICBERUNLR0xfTVVUQVRFX0NPTE9SKGltYWdlLCB2VGV4Q29vcmQpO1xuXG4gIHZlYzMgbm9ybWFsO1xuICBpZiAoZmxhdFNoYWRpbmcpIHtcblxuLy8gVGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZVxuLy8gaGVhZGxlc3MuZ2wgcmVwb3J0cyB0aGUgZXh0ZW5zaW9uIGFzXG4vLyBhdmFpbGFibGUgYnV0IGRvZXMgbm90IHN1cHBvcnQgaXQgaW5cbi8vIHRoZSBzaGFkZXIuXG4jaWZkZWYgREVSSVZBVElWRVNfQVZBSUxBQkxFXG4gICAgbm9ybWFsID0gbm9ybWFsaXplKGNyb3NzKGRGZHgocG9zaXRpb25fY29tbW9uc3BhY2UueHl6KSwgZEZkeShwb3NpdGlvbl9jb21tb25zcGFjZS54eXopKSk7XG4jZWxzZVxuICAgIG5vcm1hbCA9IHZlYzMoMC4wLCAwLjAsIDEuMCk7XG4jZW5kaWZcbiAgfSBlbHNlIHtcbiAgICBub3JtYWwgPSBub3JtYWxzX2NvbW1vbnNwYWNlO1xuICB9XG5cbiAgdmVjMyBsaWdodENvbG9yID0gbGlnaHRpbmdfZ2V0TGlnaHRDb2xvcihpbWFnZS5yZ2IsIGNhbWVyYVBvc2l0aW9uLCBwb3NpdGlvbl9jb21tb25zcGFjZS54eXosIG5vcm1hbCk7XG4gIGZyYWdDb2xvciA9IHZlYzQobGlnaHRDb2xvciwgb3BhY2l0eSk7XG5cbiAgREVDS0dMX0ZJTFRFUl9DT0xPUihmcmFnQ29sb3IsIGdlb21ldHJ5KTtcbn1cbmA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ0E7QUFBQSxJQUFBQSxRQUFBLEdBQUFDLE9BQUEiLCJpZ25vcmVMaXN0IjpbXX0=