summaryrefslogtreecommitdiffstats
path: root/src/Runtime/ogl-runtime/res/effectlib/gles2/funcsampleLightVars.glsllib
diff options
context:
space:
mode:
Diffstat (limited to 'src/Runtime/ogl-runtime/res/effectlib/gles2/funcsampleLightVars.glsllib')
-rw-r--r--src/Runtime/ogl-runtime/res/effectlib/gles2/funcsampleLightVars.glsllib27
1 files changed, 27 insertions, 0 deletions
diff --git a/src/Runtime/ogl-runtime/res/effectlib/gles2/funcsampleLightVars.glsllib b/src/Runtime/ogl-runtime/res/effectlib/gles2/funcsampleLightVars.glsllib
new file mode 100644
index 00000000..6cb0d831
--- /dev/null
+++ b/src/Runtime/ogl-runtime/res/effectlib/gles2/funcsampleLightVars.glsllib
@@ -0,0 +1,27 @@
+
+#define MAX_NUM_LIGHTS 16
+
+struct LightSource
+{
+ vec4 position;
+ vec4 direction; // Specifies the light direction in world coordinates.
+ vec4 up;
+ vec4 right;
+ vec4 diffuse;
+ vec4 ambient;
+ vec4 specular;
+ float spotExponent; // Specifies the intensity distribution of the light.
+ float spotCutoff; // Specifies the maximum spread angle of the light.
+ float constantAttenuation; // Specifies the constant light attenuation factor.
+ float linearAttenuation; // Specifies the linear light attenuation factor.
+ float quadraticAttenuation; // Specifies the quadratic light attenuation factor.
+ float range; // Specifies the maximum distance of the light influence
+ float width; // Specifies the width of the area light surface.
+ float height; // Specifies the height of the area light surface;
+ vec4 shadowControls;
+ mat4 shadowView;
+ int shadowIdx;
+};
+
+uniform int uNumLights;
+uniform LightSource lights[MAX_NUM_LIGHTS];