| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788 |
- // Copyright (C) 2009-2020, Panagiotis Christopoulos Charitos and contributors.
- // All rights reserved.
- // Code licensed under the BSD License.
- // http://www.anki3d.org/LICENSE
- #pragma once
- #include <shaders/glsl_cpp_common/Common.h>
- ANKI_BEGIN_NAMESPACE
- struct DeferredPointLightUniforms
- {
- // Use these to get the correct face UVs
- Vec2 m_inputTexUvScale;
- Vec2 m_inputTexUvBias;
- Vec2 m_fbUvScale;
- Vec2 m_fbUvBias;
- Mat4 m_invViewProjMat;
- Vec3 m_camPos;
- F32 m_padding;
- // Light props
- Vec3 m_position;
- F32 m_oneOverSquareRadius; // 1/radius^2
- Vec3 m_diffuseColor;
- F32 m_padding2;
- };
- struct DeferredSpotLightUniforms
- {
- // Use these to get the correct face UVs
- Vec2 m_inputTexUvScale;
- Vec2 m_inputTexUvBias;
- Vec2 m_fbUvScale;
- Vec2 m_fbUvBias;
- Mat4 m_invViewProjMat;
- Vec3 m_camPos;
- F32 m_padding;
- // Light props
- Vec3 m_position;
- F32 m_oneOverSquareRadius; // 1/radius^2
- Vec3 m_diffuseColor;
- F32 m_outerCos;
- Vec3 m_lightDir;
- F32 m_innerCos;
- };
- struct DeferredDirectionalLightUniforms
- {
- // Use these to get the correct face UVs
- Vec2 m_inputTexUvScale;
- Vec2 m_inputTexUvBias;
- Vec2 m_fbUvScale;
- Vec2 m_fbUvBias;
- Mat4 m_invViewProjMat;
- Vec3 m_camPos;
- F32 m_near;
- // Light props
- Vec3 m_diffuseColor;
- F32 m_far;
- Vec3 m_lightDir;
- F32 m_effectiveShadowDistance;
- Mat4 m_lightMatrix;
- };
- struct DeferredVertexUniforms
- {
- Mat4 m_mvp;
- };
- ANKI_END_NAMESPACE
|