diff options
Diffstat (limited to 'src/extras/shaders/es3/light.inc.frag')
-rw-r--r-- | src/extras/shaders/es3/light.inc.frag | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/src/extras/shaders/es3/light.inc.frag b/src/extras/shaders/es3/light.inc.frag new file mode 100644 index 000000000..9d03fca54 --- /dev/null +++ b/src/extras/shaders/es3/light.inc.frag @@ -0,0 +1,25 @@ +const int MAX_LIGHTS = 8; +const int TYPE_POINT = 0; +const int TYPE_DIRECTIONAL = 1; +const int TYPE_SPOT = 2; +struct Light { + int type; + vec3 position; + vec3 color; + float intensity; + vec3 direction; + float constantAttenuation; + float linearAttenuation; + float quadraticAttenuation; + float cutOffAngle; +}; +uniform Light lights[MAX_LIGHTS]; +uniform int lightCount; + +// Pre-convolved environment maps +struct EnvironmentLight { + highp samplerCube irradiance; // For diffuse contribution + highp samplerCube specular; // For specular contribution +}; +uniform EnvironmentLight envLight; +uniform int envLightCount; |