diff options
author | Pasi Keränen <pasi.keranen@qt.io> | 2019-06-06 16:22:02 +0300 |
---|---|---|
committer | Pasi Keränen <pasi.keranen@qt.io> | 2019-06-07 13:52:44 +0300 |
commit | b4954701093739e7a4e54a0669f306922d0d4605 (patch) | |
tree | 73d71319a921234f6b507c9098fdc842f7fe06dc /res/effectlib/funcareaLightVars.glsllib | |
parent | 8548a5f5579e3eee7e5ae6b1f6901dcc8bfee19e (diff) |
Long live the slayer!
Initial commit of OpenGL Runtime to repository.
Based on SHA1 61823aaccc6510699a54b34a2fe3f7523dab3b4e
of qt3dstudio repository.
Task-number: QT3DS-3600
Change-Id: Iaeb80237399f0e5656a19ebec9d1ab3a681d8832
Reviewed-by: Pasi Keränen <pasi.keranen@qt.io>
Diffstat (limited to 'res/effectlib/funcareaLightVars.glsllib')
-rw-r--r-- | res/effectlib/funcareaLightVars.glsllib | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/res/effectlib/funcareaLightVars.glsllib b/res/effectlib/funcareaLightVars.glsllib new file mode 100644 index 0000000..7505b34 --- /dev/null +++ b/res/effectlib/funcareaLightVars.glsllib @@ -0,0 +1,32 @@ +#define MAX_AREA_LIGHTS 16 + +// note this struct must exactly match the memory layout of the +// struct SLightSourceShader in the source code. If you make changes here you need +// to adjust the struct SLightSourceShader as well +struct AreaLight +{ + 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; +}; + +layout (std140) uniform cbBufferAreaLights +{ + int uNumAreaLights; + AreaLight arealights[MAX_AREA_LIGHTS]; +}; |