export declare const vert = "\nattribute float positionIndex;\nflat varying int vMaterialIndex;\nflat varying int vPositionIndex;\n\nuniform float size_0;\nuniform float size_1;\nuniform float size_2;\nuniform float size_3;\nuniform float size_4;\nuniform float size_5;\nuniform float size_6;\nuniform float size_7;\n\nuniform bool sizeAttenuation_0;\nuniform bool sizeAttenuation_1;\nuniform bool sizeAttenuation_2;\nuniform bool sizeAttenuation_3;\nuniform bool sizeAttenuation_4;\nuniform bool sizeAttenuation_5;\nuniform bool sizeAttenuation_6;\nuniform bool sizeAttenuation_7;\n\nuniform highp usampler2D materialIndexDataTexture;\n\nuniform float scale;\n\nfloat getSize(int materialIndex) {\n if ( materialIndex == 1 ) {\n return size_1;\n } else if ( materialIndex == 2 ) {\n return size_2;\n } else if ( materialIndex == 3 ) {\n return size_3;\n } else if ( materialIndex == 4 ) {\n return size_4;\n } else if ( materialIndex == 5 ) {\n return size_5;\n } else if ( materialIndex == 6 ) {\n return size_6;\n } else if ( materialIndex == 7 ) {\n return size_7;\n } else {\n return size_0;\n }\n}\n\nbool getSizeAttenuation(int materialIndex) {\n if ( materialIndex == 1 ) {\n return sizeAttenuation_1;\n } else if ( materialIndex == 2 ) {\n return sizeAttenuation_2;\n } else if ( materialIndex == 3 ) {\n return sizeAttenuation_3;\n } else if ( materialIndex == 4 ) {\n return sizeAttenuation_4;\n } else if ( materialIndex == 5 ) {\n return sizeAttenuation_5;\n } else if ( materialIndex == 6 ) {\n return sizeAttenuation_6;\n } else if ( materialIndex == 7 ) {\n return sizeAttenuation_7;\n } else {\n return sizeAttenuation_0;\n }\n}\n\n#include \n#include \n#include \n#include \n#include \n#include \n\n#ifdef USE_POINTS_UV\n\n\tvarying vec2 vUv;\n\tuniform mat3 uvTransform;\n\n#endif\n\nint retrieveMaterialIndex() {\n vec2 uv = vec2(positionIndex/1024.0, 0.5);\n\n // get the value of a texture at a specific index\n return int(texture2D(materialIndexDataTexture, uv).r);\n}\n\nvoid main() {\n int materialIndex = retrieveMaterialIndex();\n vMaterialIndex = materialIndex;\n\n float size = getSize(materialIndex);\n bool sizeAttenuation = getSizeAttenuation(materialIndex);\n\n\t#ifdef USE_POINTS_UV\n\n\t\tvUv = ( uvTransform * vec3( uv, 1 ) ).xy;\n\n\t#endif\n\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\n gl_PointSize = size;\n\n\tif(sizeAttenuation) {\n\t\tbool isPerspective = isPerspectiveMatrix( projectionMatrix );\n\t\tif ( isPerspective ) gl_PointSize *= ( scale / - mvPosition.z );\n }\n\n\n\t#include \n\t#include \n\t#include \n\t#include \n\n}\n"; export declare const frag = "\nuniform vec3 diffuse;\nuniform vec3 color_0;\nuniform vec3 color_1;\nuniform vec3 color_2;\nuniform vec3 color_3;\nuniform vec3 color_4;\nuniform vec3 color_5;\nuniform vec3 color_6;\nuniform vec3 color_7;\n\n\nuniform float opacity;\nflat varying int vMaterialIndex;\nflat varying int vPositionIndex;\n\n#include \n#include \n\n#if defined( USE_POINTS_UV )\n\n\tvarying vec2 vUv;\n\n#else\n\n\t#if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n\n\t\tuniform mat3 uvTransform;\n\n\t#endif\n\n#endif\n\n#ifdef USE_MAP\n\n\tuniform sampler2D map_0;\n\tuniform sampler2D map_1;\n\tuniform sampler2D map_2;\n\tuniform sampler2D map_3;\n uniform sampler2D map_4;\n uniform sampler2D map_5;\n uniform sampler2D map_6;\n uniform sampler2D map_7;\n\n#endif\n\n#ifdef USE_ALPHAMAP\n\n\tuniform sampler2D alphaMap_0;\n uniform sampler2D alphaMap_1;\n uniform sampler2D alphaMap_2;\n uniform sampler2D alphaMap_3;\n uniform sampler2D alphaMap_4;\n uniform sampler2D alphaMap_5;\n uniform sampler2D alphaMap_6;\n uniform sampler2D alphaMap_7;\n\n#endif\n\n\n#include \n#include \n#include \n#include \n\nvoid main() {\n\n\t#include \n\n\tvec3 outgoingLight = vec3( 0.0 );\n\n vec3 c = vec3(1.0, 0.0, 0.0);\n if ( vMaterialIndex == 1 ) {\n c = color_1;\n } else if ( vMaterialIndex == 2 ) {\n c = color_2;\n } else if ( vMaterialIndex == 3 ) {\n c = color_3;\n } else if ( vMaterialIndex == 4 ) {\n c = color_4;\n } else if ( vMaterialIndex == 5 ) {\n c = color_5;\n } else if ( vMaterialIndex == 6 ) {\n c = color_6;\n } else if ( vMaterialIndex == 7 ) {\n c = color_7;\n } else {\n c = color_0;\n }\n\n\tvec4 diffuseColor = vec4( c, opacity );\n\n \n\n\n\t#include \n\n #if defined( USE_MAP ) || defined( USE_ALPHAMAP )\n\n #if defined( USE_POINTS_UV )\n\n vec2 uv = vUv;\n\n #else\n\n vec2 uv = ( uvTransform * vec3( gl_PointCoord.x, 1.0 - gl_PointCoord.y, 1 ) ).xy;\n\n #endif\n\n #endif\n\n #ifdef USE_MAP\n\n if ( vMaterialIndex == 1 ) {\n diffuseColor *= texture2D( map_1, uv );\n } else if ( vMaterialIndex == 2 ) {\n diffuseColor *= texture2D( map_2, uv );\n } else if ( vMaterialIndex == 3 ) {\n diffuseColor *= texture2D( map_3, uv );\n } else if ( vMaterialIndex == 4 ) {\n diffuseColor *= texture2D( map_4, uv );\n } else if ( vMaterialIndex == 5 ) {\n diffuseColor *= texture2D( map_5, uv );\n } else if ( vMaterialIndex == 6 ) {\n diffuseColor *= texture2D( map_6, uv );\n } else if ( vMaterialIndex == 7 ) {\n diffuseColor *= texture2D( map_7, uv );\n } else {\n diffuseColor *= texture2D( map_0, uv );\n }\n\n #endif\n\n #ifdef USE_ALPHAMAP\n\n if ( vMaterialIndex == 1 ) {\n diffuseColor *= texture2D( alphaMap_1, uv );\n } else if ( vMaterialIndex == 2 ) {\n diffuseColor *= texture2D( alphaMap_2, uv );\n } else if ( vMaterialIndex == 3 ) {\n diffuseColor *= texture2D( alphaMap_3, uv );\n } else if ( vMaterialIndex == 4 ) {\n diffuseColor *= texture2D( alphaMap_4, uv );\n } else if ( vMaterialIndex == 5 ) {\n diffuseColor *= texture2D( alphaMap_5, uv );\n } else if ( vMaterialIndex == 6 ) {\n diffuseColor *= texture2D( alphaMap_6, uv );\n } else if ( vMaterialIndex == 7 ) {\n diffuseColor *= texture2D( alphaMap_7, uv );\n } else {\n diffuseColor *= texture2D( alphaMap_0, uv );\n }\n\n #endif\n\n\t#include \n\t#include \n\n\toutgoingLight = diffuseColor.rgb;\n\n\t#include \n\t#include \n\t#include \n\t#include \n\t#include \n\n}\n"; //# sourceMappingURL=multi_points.d.ts.map