blob: 7b6bf3bc5a05555673accc3867d9b253631c6e5d [file] [log] [blame]
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
int specularMipLevels;
};
uniform EnvironmentLight envLight;
uniform int envLightCount;