summaryrefslogtreecommitdiffstats
path: root/src/extras/shaders/es3/light.inc.frag
blob: 18012ccc1c4d5b83cd75f0dc53db72e3078ccd5d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
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;
    FP vec3 position;
    FP vec3 color;
    FP float intensity;
    FP vec3 direction;
    FP float constantAttenuation;
    FP float linearAttenuation;
    FP float quadraticAttenuation;
    FP 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;