playcanvas
Version:
PlayCanvas WebGL game engine
3 lines (2 loc) • 3.83 kB
TypeScript
declare const _default: "\n#if defined(LIGHT{i})\n\n uniform light{i}_color: vec3f;\n\n #if LIGHT{i}TYPE == DIRECTIONAL\n uniform light{i}_direction: vec3f;\n #else\n\n #define LIT_CODE_LIGHTS_POINT // include functionality for point lights\n\n uniform light{i}_position: vec3f;\n uniform light{i}_radius: f32;\n\n #if LIGHT{i}TYPE == SPOT\n\n #define LIT_CODE_LIGHTS_SPOT // include functionality for spot lights\n\n uniform light{i}_direction: vec3f;\n uniform light{i}_innerConeAngle: f32;\n uniform light{i}_outerConeAngle: f32;\n #endif\n #endif\n\n // area lights\n #if LIGHT{i}SHAPE != PUNCTUAL\n\n #define LIT_CODE_FALLOFF_SQUARED // include functionality for inverse squared falloff\n\n #if LIGHT{i}TYPE == DIRECTIONAL\n uniform light{i}_position: vec3f;\n #endif\n uniform light{i}_halfWidth: vec3f;\n uniform light{i}_halfHeight: vec3f;\n #else\n\n #if LIGHT{i}FALLOFF == LINEAR\n #define LIT_CODE_FALLOFF_LINEAR // include functionality for linear falloff\n #endif\n\n #if LIGHT{i}FALLOFF == INVERSESQUARED\n #define LIT_CODE_FALLOFF_SQUARED // include functionality for inverse squared falloff\n #endif\n\n #endif\n\n // shadow casting\n #if defined(LIGHT{i}CASTSHADOW)\n\n uniform light{i}_shadowMatrix: mat4x4f;\n uniform light{i}_shadowIntensity: f32;\n uniform light{i}_shadowParams: vec4f; // width, height, bias, radius\n\n #if LIGHT{i}SHADOWTYPE == PCSS_32F\n uniform light{i}_shadowSearchArea: f32;\n uniform light{i}_cameraParams: vec4f;\n #if LIGHT{i}TYPE == DIRECTIONAL\n uniform light{i}_softShadowParams: vec4f;\n #endif\n #endif\n\n // directional (cascaded) shadows\n #if LIGHT{i}TYPE == DIRECTIONAL\n uniform light{i}_shadowMatrixPalette: array<mat4x4f, 4>;\n uniform light{i}_shadowCascadeDistances: vec4f;\n uniform light{i}_shadowCascadeCount: i32;\n uniform light{i}_shadowCascadeBlend: f32;\n #endif\n\n #if LIGHT{i}TYPE == OMNI\n NOT SUPPORTED\n/* #if defined(LIGHT{i}SHADOW_PCF)\n uniform samplerCubeShadow light{i}_shadowMap;\n #else\n uniform samplerCube light{i}_shadowMap;\n #endif\n*/ \n #else\n #if defined(LIGHT{i}SHADOW_PCF)\n var light{i}_shadowMap: texture_depth_2d;\n var light{i}_shadowMapSampler: sampler_comparison;\n #else\n var light{i}_shadowMap: texture_2d<f32>;\n var light{i}_shadowMapSampler: sampler;\n #endif\n #endif\n\n #endif\n\n // cookie\n #if defined(LIGHT{i}COOKIE)\n\n #define LIT_CODE_COOKIE // include functionality for cookies\n\n #if LIGHT{i}TYPE == OMNI\n NOT SUPPORTED\n/* \n uniform samplerCube light{i}_cookie;\n uniform float light{i}_cookieIntensity;\n #if !defined(LIGHT{i}CASTSHADOW)\n uniform mat4 light{i}_shadowMatrix;\n #endif\n*/\n #endif\n\n #if LIGHT{i}TYPE == SPOT\n NOT SUPPORTED\n/* uniform sampler2D light{i}_cookie;\n uniform float light{i}_cookieIntensity;\n #if !defined(LIGHT{i}CASTSHADOW)\n uniform mat4 light{i}_shadowMatrix;\n #endif\n #if defined(LIGHT{i}COOKIE_TRANSFORM)\n uniform vec4 light{i}_cookieMatrix;\n uniform vec2 light{i}_cookieOffset;\n #endif\n*/\n #endif\n #endif\n#endif\n";
export default _default;