UNPKG

playcanvas

Version:

PlayCanvas WebGL game engine

5 lines (3 loc) 2.21 kB
// functionality includes for lighting / shadowing code. var lightingPS = '\n\n#ifdef LIT_CLUSTERED_LIGHTS\n // all this functionality that needs to be included for clustered lighting\n #define LIT_CODE_FALLOFF_LINEAR\n #define LIT_CODE_FALLOFF_SQUARED\n #define LIT_CODE_LIGHTS_POINT\n #define LIT_CODE_LIGHTS_SPOT\n#endif\n\n#ifdef AREA_LIGHTS\n uniform highp sampler2D areaLightsLutTex1;\n uniform highp sampler2D areaLightsLutTex2;\n#endif\n\n#ifdef LIT_LIGHTING\n #include "lightDiffuseLambertPS"\n\n // area lights\n #if defined(AREA_LIGHTS) || defined(LIT_CLUSTERED_AREA_LIGHTS)\n #include "ltcPS"\n #endif\n#endif\n\n#ifdef SHADOW_DIRECTIONAL\n #include "shadowCascadesPS"\n#endif\n\n#if defined(SHADOW_KIND_PCF1)\n #include "shadowPCF1PS"\n#endif\n\n#if defined(SHADOW_KIND_PCF3)\n #include "shadowPCF3PS"\n#endif\n\n#if defined(SHADOW_KIND_PCF5)\n #include "shadowPCF5PS"\n#endif\n\n#if defined(SHADOW_KIND_PCSS)\n #include "linearizeDepthPS"\n #include "shadowPCSSPS"\n #include "shadowSoftPS"\n#endif\n\n#if defined(SHADOW_KIND_VSM)\n #include "shadowEVSMPS"\n#endif\n\n#ifdef LIT_CODE_FALLOFF_LINEAR\n #include "falloffLinearPS"\n#endif\n\n#ifdef LIT_CODE_FALLOFF_SQUARED\n #include "falloffInvSquaredPS"\n#endif\n\n#ifdef LIT_CODE_LIGHTS_POINT\n #include "lightDirPointPS"\n#endif\n\n#ifdef LIT_CODE_LIGHTS_SPOT\n #include "spotPS"\n#endif\n\n#ifdef LIT_CODE_COOKIE\n #include "cookiePS"\n#endif\n\n// clustered lighting\n#ifdef LIT_CLUSTERED_LIGHTS\n\n #include "lightBufferDefinesPS"\n\n // include this before shadow / cookie code\n #include "clusteredLightUtilsPS"\n\n #ifdef CLUSTER_COOKIES\n #include "clusteredLightCookiesPS"\n #endif\n\n #ifdef CLUSTER_SHADOWS\n #include "clusteredLightShadowsPS"\n #endif\n\n #include "floatUnpackingPS"\n #include "clusteredLightPS"\n\n#endif\n\n// LOOP - generate shadow evaluation functions for all non-clustered lights\n#include "lightFunctionShadowPS, LIGHT_COUNT"\n\n// LOOP - generate light evaluation functions for all non-clustered lights\n#include "lightFunctionLightPS, LIGHT_COUNT"\n\n'; export { lightingPS as default };