kepler.gl
Version:
kepler.gl is a webgl based application to visualize large scale location data in the browser
10 lines (9 loc) • 3.2 kB
JavaScript
"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"] = "#define SHADER_NAME raster-mesh-layer-fs\n\nprecision highp float;\n\nuniform bool hasTexture;\n\nuniform bool flatShading;\nuniform float opacity;\n\nvarying vec2 vTexCoord;\nvarying vec3 cameraPosition;\nvarying vec3 normals_commonspace;\nvarying vec4 position_commonspace;\nvarying vec4 vColor;\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 gl_FragColor = vec4(lightColor, opacity);\n\n DECKGL_FILTER_COLOR(gl_FragColor, geometry);\n}\n";
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfZGVmYXVsdCIsImV4cG9ydHMiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvcmFzdGVyL3Jhc3Rlci1tZXNoLWxheWVyL3Jhc3Rlci1tZXNoLWxheWVyLXdlYmdsMS5mcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvLyBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogTUlUXG4vLyBDb3B5cmlnaHQgY29udHJpYnV0b3JzIHRvIHRoZSBrZXBsZXIuZ2wgcHJvamVjdFxuXG5leHBvcnQgZGVmYXVsdCBgXFxcbiNkZWZpbmUgU0hBREVSX05BTUUgcmFzdGVyLW1lc2gtbGF5ZXItZnNcblxucHJlY2lzaW9uIGhpZ2hwIGZsb2F0O1xuXG51bmlmb3JtIGJvb2wgaGFzVGV4dHVyZTtcblxudW5pZm9ybSBib29sIGZsYXRTaGFkaW5nO1xudW5pZm9ybSBmbG9hdCBvcGFjaXR5O1xuXG52YXJ5aW5nIHZlYzIgdlRleENvb3JkO1xudmFyeWluZyB2ZWMzIGNhbWVyYVBvc2l0aW9uO1xudmFyeWluZyB2ZWMzIG5vcm1hbHNfY29tbW9uc3BhY2U7XG52YXJ5aW5nIHZlYzQgcG9zaXRpb25fY29tbW9uc3BhY2U7XG52YXJ5aW5nIHZlYzQgdkNvbG9yO1xuXG52b2lkIG1haW4odm9pZCkge1xuICBnZW9tZXRyeS51diA9IHZUZXhDb29yZDtcbiAgdmVjNCBpbWFnZTtcbiAgREVDS0dMX0NSRUFURV9DT0xPUihpbWFnZSwgdlRleENvb3JkKTtcblxuICBERUNLR0xfTVVUQVRFX0NPTE9SKGltYWdlLCB2VGV4Q29vcmQpO1xuXG4gIHZlYzMgbm9ybWFsO1xuICBpZiAoZmxhdFNoYWRpbmcpIHtcblxuLy8gVGhpcyBpcyBuZWNlc3NhcnkgYmVjYXVzZVxuLy8gaGVhZGxlc3MuZ2wgcmVwb3J0cyB0aGUgZXh0ZW5zaW9uIGFzXG4vLyBhdmFpbGFibGUgYnV0IGRvZXMgbm90IHN1cHBvcnQgaXQgaW5cbi8vIHRoZSBzaGFkZXIuXG4jaWZkZWYgREVSSVZBVElWRVNfQVZBSUxBQkxFXG4gICAgbm9ybWFsID0gbm9ybWFsaXplKGNyb3NzKGRGZHgocG9zaXRpb25fY29tbW9uc3BhY2UueHl6KSwgZEZkeShwb3NpdGlvbl9jb21tb25zcGFjZS54eXopKSk7XG4jZWxzZVxuICAgIG5vcm1hbCA9IHZlYzMoMC4wLCAwLjAsIDEuMCk7XG4jZW5kaWZcbiAgfSBlbHNlIHtcbiAgICBub3JtYWwgPSBub3JtYWxzX2NvbW1vbnNwYWNlO1xuICB9XG5cbiAgdmVjMyBsaWdodENvbG9yID0gbGlnaHRpbmdfZ2V0TGlnaHRDb2xvcihpbWFnZS5yZ2IsIGNhbWVyYVBvc2l0aW9uLCBwb3NpdGlvbl9jb21tb25zcGFjZS54eXosIG5vcm1hbCk7XG4gIGdsX0ZyYWdDb2xvciA9IHZlYzQobGlnaHRDb2xvciwgb3BhY2l0eSk7XG5cbiAgREVDS0dMX0ZJTFRFUl9DT0xPUihnbF9GcmFnQ29sb3IsIGdlb21ldHJ5KTtcbn1cbmA7XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBO0FBQ0E7QUFBQSxJQUFBQSxRQUFBLEdBQUFDLE9BQUEiLCJpZ25vcmVMaXN0IjpbXX0=