diff options
| author | Sheikh Dawood Abdul Ajees <[email protected]> | 2017-09-15 15:41:57 -0500 |
|---|---|---|
| committer | Sheikh Dawood Abdul Ajees <[email protected]> | 2017-09-15 15:41:57 -0500 |
| commit | d1c812f1162e5fdb13c215792725b2591d7428f5 (patch) | |
| tree | 407056c45c7e9320c48fca6a3697d81a061c4ea0 /APEX_1.4/media/SampleRenderer/4/shaders/include/globals.cg | |
| parent | PhysX 3.4, APEX 1.4 patch release @22121272 (diff) | |
| download | physx-3.4-d1c812f1162e5fdb13c215792725b2591d7428f5.tar.xz physx-3.4-d1c812f1162e5fdb13c215792725b2591d7428f5.zip | |
PhysX 3.4.1, APEX 1.4.1 Release @22845541v3.4.1
Diffstat (limited to 'APEX_1.4/media/SampleRenderer/4/shaders/include/globals.cg')
| -rw-r--r-- | APEX_1.4/media/SampleRenderer/4/shaders/include/globals.cg | 102 |
1 files changed, 102 insertions, 0 deletions
diff --git a/APEX_1.4/media/SampleRenderer/4/shaders/include/globals.cg b/APEX_1.4/media/SampleRenderer/4/shaders/include/globals.cg new file mode 100644 index 00000000..682ab70f --- /dev/null +++ b/APEX_1.4/media/SampleRenderer/4/shaders/include/globals.cg @@ -0,0 +1,102 @@ + +#ifndef GLOBALS_CG +#define GLOBALS_CG + +#ifdef RENDERER_PS3 +#define MAX_BONES 50 +#else +#define MAX_BONES 60 +#endif + +#if !defined(MAX_LIGHTS) +#define MAX_LIGHTS 1 +#endif + +#include <defines.cg> + +BEGIN_CBUFFER(cbMesh0) +CONST_TYPE float4x4 g_MVP; +END_CBUFFER(cbMesh0) + +BEGIN_CBUFFER(cbMesh) +CONST_TYPE float4x4 g_modelMatrix; +CONST_TYPE float4x4 g_modelViewMatrix; +CONST_TYPE float4x4 g_modelViewProjMatrix; +END_CBUFFER(cbMesh) + +BEGIN_CBUFFER(cbFrame) +CONST_TYPE float4x4 g_viewMatrix; +CONST_TYPE float4x4 g_projMatrix; +CONST_TYPE float3 g_eyePosition; +CONST_TYPE float3 g_eyeDirection; +END_CBUFFER(cbFrame) + +BEGIN_CBUFFER(cbFrameInv) +CONST_TYPE float4x4 g_invViewProjMatrix; +END_CBUFFER(cbFrameInv) + +#if defined USE_VTF +CONST_TYPE sampler2D g_boneTexture; // Vertex texture to hold bone matrices +#endif + +BEGIN_CBUFFER(cbBones) +CONST_TYPE float4x4 g_boneMatrices[MAX_BONES]; // TODO: change this to a float4x3 (a transposed 3x4) so we can pack more bones in... +#if defined USE_VTF +CONST_TYPE int g_boneTextureHeight; // Bone texture height +#endif +END_CBUFFER(cbBones) + +BEGIN_CBUFFER(cbFog) +CONST_TYPE float4 g_fogColorAndDistance; +END_CBUFFER(cbFog) + +BEGIN_CBUFFER(cbAmbient) +CONST_TYPE float3 g_ambientColor; +END_CBUFFER(cbAmbient) + +BEGIN_CBUFFER(cbLight) +CONST_TYPE float3 g_lightColor; +CONST_TYPE float3 g_lightDirection; +CONST_TYPE float3 g_lightPosition; +CONST_TYPE float g_lightIntensity; +CONST_TYPE float g_lightInnerRadius; +CONST_TYPE float g_lightOuterRadius; +CONST_TYPE float g_lightInnerCone; +CONST_TYPE float g_lightOuterCone; +END_CBUFFER(cbLight) + +BEGIN_CBUFFER(cbScale) +#if ENABLE_VFACE_SCALE + CONST_TYPE float g_vfaceScale; +#endif +END_CBUFFER(cbScale) + +// D3D11 expects rgba +#if ENABLE_COLOR_SWIZZLE_SUPPORT +BEGIN_CBUFFER(cbSwizzleColor) +CONST_TYPE int g_bSwizzleColor; +END_CBUFFER(cbSwizzleColor) +half4 swizzle(half4 inColor) { return g_bSwizzleColor ? inColor.zyxw : inColor; } +#else +half4 swizzle(half4 inColor) { return inColor; } +#endif + +#if defined(RENDERER_D3D11) +// D3D11 screen coordinates differ from GL/DX9 +BEGIN_CBUFFER(cbView2D) +CONST_TYPE float4x4 g_viewMatrix2D; +END_CBUFFER(cbView2D) +#else +static const float4x4 g_viewMatrix2D = {{1,0,0,0},{0,1,0,0},{0,0,1,0},{0,0,0,1}}; +#endif + +#if defined(PASS_SPOT_LIGHT) + // TODO: Make this less hacky, have a PASS_SUPPORTS_SHADOWS #define + #define PASS_SUPPORTS_SHADOWS + DECLARE_TEXTURE(g_lightShadowMap); + BEGIN_CBUFFER(cbLightShadow) + CONST_TYPE float4x4 g_lightShadowMatrix; + END_CBUFFER(cbLightShadow) +#endif + +#endif |