diff --git a/DirectXTK_Desktop_2015_Win10.vcxproj b/DirectXTK_Desktop_2015_Win10.vcxproj
index fca901b8..2c35ee9e 100644
--- a/DirectXTK_Desktop_2015_Win10.vcxproj
+++ b/DirectXTK_Desktop_2015_Win10.vcxproj
@@ -251,10 +251,18 @@
+
+
+
+
+
+
+
+
@@ -476,8 +484,6 @@
-
+
\ No newline at end of file
diff --git a/DirectXTK_Desktop_2015_Win10.vcxproj.filters b/DirectXTK_Desktop_2015_Win10.vcxproj.filters
index 335f8b89..ae02db7b 100644
--- a/DirectXTK_Desktop_2015_Win10.vcxproj.filters
+++ b/DirectXTK_Desktop_2015_Win10.vcxproj.filters
@@ -866,5 +866,29 @@
Src\Shaders\Symbols
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
\ No newline at end of file
diff --git a/DirectXTK_Desktop_2017_Win10.vcxproj b/DirectXTK_Desktop_2017_Win10.vcxproj
index 1f1e3f42..85fb0852 100644
--- a/DirectXTK_Desktop_2017_Win10.vcxproj
+++ b/DirectXTK_Desktop_2017_Win10.vcxproj
@@ -251,10 +251,18 @@
+
+
+
+
+
+
+
+
diff --git a/DirectXTK_Desktop_2017_Win10.vcxproj.filters b/DirectXTK_Desktop_2017_Win10.vcxproj.filters
index 335f8b89..ae02db7b 100644
--- a/DirectXTK_Desktop_2017_Win10.vcxproj.filters
+++ b/DirectXTK_Desktop_2017_Win10.vcxproj.filters
@@ -866,5 +866,29 @@
Src\Shaders\Symbols
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
\ No newline at end of file
diff --git a/DirectXTK_Windows10.vcxproj b/DirectXTK_Windows10.vcxproj
index 0e6c53b6..effd58a0 100644
--- a/DirectXTK_Windows10.vcxproj
+++ b/DirectXTK_Windows10.vcxproj
@@ -209,10 +209,18 @@
+
+
+
+
+
+
+
+
diff --git a/DirectXTK_Windows10.vcxproj.filters b/DirectXTK_Windows10.vcxproj.filters
index 41b6e5cb..bd31101f 100644
--- a/DirectXTK_Windows10.vcxproj.filters
+++ b/DirectXTK_Windows10.vcxproj.filters
@@ -737,6 +737,30 @@
Src\Shaders\Symbols
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
diff --git a/DirectXTK_XboxOneXDK_2015.vcxproj b/DirectXTK_XboxOneXDK_2015.vcxproj
index a4992d32..8a705e23 100644
--- a/DirectXTK_XboxOneXDK_2015.vcxproj
+++ b/DirectXTK_XboxOneXDK_2015.vcxproj
@@ -247,10 +247,18 @@
+
+
+
+
+
+
+
+
@@ -482,8 +490,6 @@
-
+
\ No newline at end of file
diff --git a/DirectXTK_XboxOneXDK_2015.vcxproj.filters b/DirectXTK_XboxOneXDK_2015.vcxproj.filters
index 5aa620b3..0acd6c85 100644
--- a/DirectXTK_XboxOneXDK_2015.vcxproj.filters
+++ b/DirectXTK_XboxOneXDK_2015.vcxproj.filters
@@ -873,6 +873,30 @@
Src\Shaders\Symbols
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
diff --git a/DirectXTK_XboxOneXDK_2017.vcxproj b/DirectXTK_XboxOneXDK_2017.vcxproj
index a2327629..6343d0ef 100644
--- a/DirectXTK_XboxOneXDK_2017.vcxproj
+++ b/DirectXTK_XboxOneXDK_2017.vcxproj
@@ -247,10 +247,18 @@
+
+
+
+
+
+
+
+
@@ -482,8 +490,6 @@
-
+
\ No newline at end of file
diff --git a/DirectXTK_XboxOneXDK_2017.vcxproj.filters b/DirectXTK_XboxOneXDK_2017.vcxproj.filters
index 5aa620b3..0acd6c85 100644
--- a/DirectXTK_XboxOneXDK_2017.vcxproj.filters
+++ b/DirectXTK_XboxOneXDK_2017.vcxproj.filters
@@ -873,6 +873,30 @@
Src\Shaders\Symbols
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Compiled
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
+
+ Src\Shaders\Symbols
+
diff --git a/Src/NormalMapEffect.cpp b/Src/NormalMapEffect.cpp
index 11c6511e..fc486bee 100644
--- a/Src/NormalMapEffect.cpp
+++ b/Src/NormalMapEffect.cpp
@@ -46,10 +46,10 @@ struct NormalMapEffectTraits
{
typedef NormalMapEffectConstants ConstantBufferType;
- static const int VertexShaderCount = 4;
+ static const int VertexShaderCount = 8;
static const int PixelShaderCount = 4;
static const int ShaderPermutationCount = 16;
- static const int RootSignatureCount = 1;
+ static const int RootSignatureCount = 2;
};
@@ -62,10 +62,10 @@ class NormalMapEffect::Impl : public EffectBase
enum RootParameterIndex
{
TextureSRV,
- TextureSpecularSRV,
TextureNormalSRV,
TextureSampler,
ConstantBuffer,
+ TextureSpecularSRV,
RootParameterCount
};
@@ -91,9 +91,13 @@ namespace
#if defined(_XBOX_ONE) && defined(_TITLE)
#include "Shaders/Compiled/XboxOneNormalMapEffect_VSNormalPixelLightingTx.inc"
#include "Shaders/Compiled/XboxOneNormalMapEffect_VSNormalPixelLightingTxVc.inc"
+ #include "Shaders/Compiled/XboxOneNormalMapEffect_VSNormalPixelLightingTxNoSpec.inc"
+ #include "Shaders/Compiled/XboxOneNormalMapEffect_VSNormalPixelLightingTxVcNoSpec.inc"
#include "Shaders/Compiled/XboxOneNormalMapEffect_VSNormalPixelLightingTxBn.inc"
#include "Shaders/Compiled/XboxOneNormalMapEffect_VSNormalPixelLightingTxVcBn.inc"
+ #include "Shaders/Compiled/XboxOneNormalMapEffect_VSNormalPixelLightingTxNoSpecBn.inc"
+ #include "Shaders/Compiled/XboxOneNormalMapEffect_VSNormalPixelLightingTxVcNoSpecBn.inc"
#include "Shaders/Compiled/XboxOneNormalMapEffect_PSNormalPixelLightingTx.inc"
#include "Shaders/Compiled/XboxOneNormalMapEffect_PSNormalPixelLightingTxNoFog.inc"
@@ -102,9 +106,13 @@ namespace
#else
#include "Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTx.inc"
#include "Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVc.inc"
+ #include "Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxNoSpec.inc"
+ #include "Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcNoSpec.inc"
#include "Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxBn.inc"
#include "Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcBn.inc"
+ #include "Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxNoSpecBn.inc"
+ #include "Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcNoSpecBn.inc"
#include "Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTx.inc"
#include "Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFog.inc"
@@ -116,11 +124,17 @@ namespace
const D3D12_SHADER_BYTECODE EffectBase::VertexShaderBytecode[] =
{
- { NormalMapEffect_VSNormalPixelLightingTx, sizeof(NormalMapEffect_VSNormalPixelLightingTx) },
- { NormalMapEffect_VSNormalPixelLightingTxVc, sizeof(NormalMapEffect_VSNormalPixelLightingTxVc) },
+ { NormalMapEffect_VSNormalPixelLightingTx, sizeof(NormalMapEffect_VSNormalPixelLightingTx) },
+ { NormalMapEffect_VSNormalPixelLightingTxVc, sizeof(NormalMapEffect_VSNormalPixelLightingTxVc) },
+
+ { NormalMapEffect_VSNormalPixelLightingTxBn, sizeof(NormalMapEffect_VSNormalPixelLightingTxBn) },
+ { NormalMapEffect_VSNormalPixelLightingTxVcBn, sizeof(NormalMapEffect_VSNormalPixelLightingTxVcBn) },
- { NormalMapEffect_VSNormalPixelLightingTxBn, sizeof(NormalMapEffect_VSNormalPixelLightingTxBn) },
- { NormalMapEffect_VSNormalPixelLightingTxVcBn, sizeof(NormalMapEffect_VSNormalPixelLightingTxVcBn) },
+ { NormalMapEffect_VSNormalPixelLightingTxNoSpec, sizeof(NormalMapEffect_VSNormalPixelLightingTxNoSpec) },
+ { NormalMapEffect_VSNormalPixelLightingTxVcNoSpec, sizeof(NormalMapEffect_VSNormalPixelLightingTxVcNoSpec) },
+
+ { NormalMapEffect_VSNormalPixelLightingTxNoSpecBn, sizeof(NormalMapEffect_VSNormalPixelLightingTxNoSpecBn) },
+ { NormalMapEffect_VSNormalPixelLightingTxVcNoSpecBn, sizeof(NormalMapEffect_VSNormalPixelLightingTxVcNoSpecBn) },
};
@@ -131,20 +145,20 @@ const int EffectBase::VertexShaderIndices[] =
1, // pixel lighting + texture + vertex color
1, // pixel lighting + texture + vertex color, no fog
- 0, // pixel lighting + texture, no specular
- 0, // pixel lighting + texture, no fog or specular
- 1, // pixel lighting + texture + vertex color, no specular
- 1, // pixel lighting + texture + vertex color, no fog or specular
+ 4, // pixel lighting + texture, no specular
+ 4, // pixel lighting + texture, no fog or specular
+ 5, // pixel lighting + texture + vertex color, no specular
+ 5, // pixel lighting + texture + vertex color, no fog or specular
2, // pixel lighting (biased vertex normal/tangent) + texture
2, // pixel lighting (biased vertex normal/tangent) + texture, no fog
3, // pixel lighting (biased vertex normal/tangent) + texture + vertex color
3, // pixel lighting (biased vertex normal/tangent) + texture + vertex color, no fog
- 2, // pixel lighting (biased vertex normal/tangent) + texture, no specular
- 2, // pixel lighting (biased vertex normal/tangent) + texture, no fog or specular
- 3, // pixel lighting (biased vertex normal/tangent) + texture + vertex color, no specular
- 3, // pixel lighting (biased vertex normal/tangent) + texture + vertex color, no fog or specular
+ 6, // pixel lighting (biased vertex normal/tangent) + texture, no specular
+ 6, // pixel lighting (biased vertex normal/tangent) + texture, no fog or specular
+ 7, // pixel lighting (biased vertex normal/tangent) + texture + vertex color, no specular
+ 7, // pixel lighting (biased vertex normal/tangent) + texture + vertex color, no fog or specular
};
@@ -213,19 +227,29 @@ NormalMapEffect::Impl::Impl(_In_ ID3D12Device* device, int effectFlags, const Ef
rootParameters[RootParameterIndex::TextureSRV].InitAsDescriptorTable(1, &textureSRV);
CD3DX12_DESCRIPTOR_RANGE textureSRV2(D3D12_DESCRIPTOR_RANGE_TYPE_SRV, 1, 1);
- rootParameters[RootParameterIndex::TextureSpecularSRV].InitAsDescriptorTable(1, &textureSRV2);
-
- CD3DX12_DESCRIPTOR_RANGE textureSRV3(D3D12_DESCRIPTOR_RANGE_TYPE_SRV, 1, 2);
- rootParameters[RootParameterIndex::TextureNormalSRV].InitAsDescriptorTable(1, &textureSRV3);
+ rootParameters[RootParameterIndex::TextureNormalSRV].InitAsDescriptorTable(1, &textureSRV2);
CD3DX12_DESCRIPTOR_RANGE textureSampler(D3D12_DESCRIPTOR_RANGE_TYPE_SAMPLER, 1, 0);
rootParameters[RootParameterIndex::TextureSampler].InitAsDescriptorTable(1, &textureSampler);
rootParameters[RootParameterIndex::ConstantBuffer].InitAsConstantBufferView(0, 0, D3D12_SHADER_VISIBILITY_ALL);
CD3DX12_ROOT_SIGNATURE_DESC rsigDesc = {};
- rsigDesc.Init(_countof(rootParameters), rootParameters, 0, nullptr, rootSignatureFlags);
- mRootSignature = GetRootSignature(0, rsigDesc);
+ if (specularMap)
+ {
+ CD3DX12_DESCRIPTOR_RANGE textureSRV3(D3D12_DESCRIPTOR_RANGE_TYPE_SRV, 1, 2);
+ rootParameters[RootParameterIndex::TextureSpecularSRV].InitAsDescriptorTable(1, &textureSRV3);
+
+ rsigDesc.Init(_countof(rootParameters), rootParameters, 0, nullptr, rootSignatureFlags);
+
+ mRootSignature = GetRootSignature(1, rsigDesc);
+ }
+ else
+ {
+ rsigDesc.Init(_countof(rootParameters) - 1, rootParameters, 0, nullptr, rootSignatureFlags);
+
+ mRootSignature = GetRootSignature(0, rsigDesc);
+ }
}
assert(mRootSignature != 0);
@@ -271,7 +295,7 @@ int NormalMapEffect::Impl::GetPipelineStatePermutation(bool vertexColorEnabled)
}
// Specular map?
- if (specularMap)
+ if (!specularMap)
{
permutation += 4;
}
@@ -319,11 +343,6 @@ void NormalMapEffect::Impl::Apply(_In_ ID3D12GraphicsCommandList* commandList)
}
commandList->SetGraphicsRootDescriptorTable(RootParameterIndex::TextureSpecularSRV, specular);
}
- else
- {
- // Set unused texture slot to void validation warning on Tier 1 hardware
- commandList->SetGraphicsRootDescriptorTable(RootParameterIndex::TextureSpecularSRV, texture);
- }
// Set constants
commandList->SetGraphicsRootConstantBufferView(RootParameterIndex::ConstantBuffer, GetConstantBufferGpuAddress());
diff --git a/Src/Shaders/CompileShaders.cmd b/Src/Shaders/CompileShaders.cmd
index 89ccfc38..d0b2aea8 100644
--- a/Src/Shaders/CompileShaders.cmd
+++ b/Src/Shaders/CompileShaders.cmd
@@ -121,6 +121,11 @@ call :CompileShader%1 NormalMapEffect vs VSNormalPixelLightingTxBn
call :CompileShader%1 NormalMapEffect vs VSNormalPixelLightingTxVc
call :CompileShader%1 NormalMapEffect vs VSNormalPixelLightingTxVcBn
+call :CompileShader%1 NormalMapEffect vs VSNormalPixelLightingTxNoSpec
+call :CompileShader%1 NormalMapEffect vs VSNormalPixelLightingTxNoSpecBn
+call :CompileShader%1 NormalMapEffect vs VSNormalPixelLightingTxVcNoSpec
+call :CompileShader%1 NormalMapEffect vs VSNormalPixelLightingTxVcNoSpecBn
+
call :CompileShader%1 NormalMapEffect ps PSNormalPixelLightingTx
call :CompileShader%1 NormalMapEffect ps PSNormalPixelLightingTxNoFog
call :CompileShader%1 NormalMapEffect ps PSNormalPixelLightingTxNoSpec
diff --git a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTx.inc b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTx.inc
index 494e68c3..1abca1cf 100644
--- a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTx.inc
+++ b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTx.inc
@@ -42,7 +42,7 @@ rsq r0.w, r0.w
mul r1.xyz, r0.wwww, v3.xyzx
mul r2.xyz, r0.zxyz, r1.yzxy
mad r2.xyz, r0.yzxy, r1.zxyz, -r2.xyzx
-sample_indexable(texture2d)(float,float,float,float) r3.xyz, v0.xyxx, t2.xyzw, s0
+sample_indexable(texture2d)(float,float,float,float) r3.xyz, v0.xyxx, t1.xyzw, s0
mad r3.xyz, r3.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
mul r2.xyz, r2.xyzx, r3.yyyy
mad r1.xyz, r3.xxxx, r1.xyzx, r2.xyzx
@@ -81,7 +81,7 @@ mul r2.xyz, r1.yyyy, cb0[10].xyzx
mad r1.xyw, r1.xxxx, cb0[9].xyxz, r2.xyxz
mad r1.xyz, r1.zzzz, cb0[11].xyzx, r1.xywx
mul r1.xyz, r1.xyzx, cb0[2].xyzx
-sample_indexable(texture2d)(float,float,float,float) r2.xyz, v0.xyxx, t1.xyzw, s0
+sample_indexable(texture2d)(float,float,float,float) r2.xyz, v0.xyxx, t2.xyzw, s0
mul r1.xyz, r1.xyzx, r2.xyzx
sample_indexable(texture2d)(float,float,float,float) r2.xyzw, v0.xyxx, t0.xyzw, s0
mul r2.xyzw, r2.xyzw, v4.xyzw
@@ -100,10 +100,10 @@ ret
const BYTE NormalMapEffect_PSNormalPixelLightingTx[] =
{
- 68, 88, 66, 67, 129, 74,
- 83, 6, 252, 0, 142, 68,
- 95, 175, 128, 121, 204, 67,
- 132, 140, 1, 0, 0, 0,
+ 68, 88, 66, 67, 211, 236,
+ 91, 207, 166, 154, 175, 89,
+ 247, 138, 106, 38, 150, 232,
+ 169, 173, 1, 0, 0, 0,
28, 10, 0, 0, 4, 0,
0, 0, 48, 0, 0, 0,
200, 0, 0, 0, 252, 0,
@@ -213,7 +213,7 @@ const BYTE NormalMapEffect_PSNormalPixelLightingTx[] =
114, 0, 16, 0, 3, 0,
0, 0, 70, 16, 16, 0,
0, 0, 0, 0, 70, 126,
- 16, 0, 2, 0, 0, 0,
+ 16, 0, 1, 0, 0, 0,
0, 96, 16, 0, 0, 0,
0, 0, 50, 0, 0, 15,
114, 0, 16, 0, 3, 0,
@@ -423,7 +423,7 @@ const BYTE NormalMapEffect_PSNormalPixelLightingTx[] =
114, 0, 16, 0, 2, 0,
0, 0, 70, 16, 16, 0,
0, 0, 0, 0, 70, 126,
- 16, 0, 1, 0, 0, 0,
+ 16, 0, 2, 0, 0, 0,
0, 96, 16, 0, 0, 0,
0, 0, 56, 0, 0, 7,
114, 0, 16, 0, 1, 0,
@@ -507,10 +507,10 @@ const BYTE NormalMapEffect_PSNormalPixelLightingTx[] =
0, 0, 0, 0, 112, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 140, 0,
- 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 168, 0,
0, 0, 2, 0, 0, 0,
- 0, 0, 0, 0, 196, 0,
+ 0, 0, 0, 0, 168, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 176, 0,
0, 0, 1, 0, 0, 0,
92, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
@@ -522,14 +522,14 @@ const BYTE NormalMapEffect_PSNormalPixelLightingTx[] =
0, 0, 0, 0, 0, 0,
255, 255, 255, 255, 1, 0,
0, 0, 148, 0, 0, 0,
+ 3, 0, 0, 0, 1, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 255, 255,
+ 255, 255, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1, 0,
+ 0, 0, 184, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 2, 0, 0, 0,
0, 0, 0, 0, 255, 255,
- 255, 255, 1, 0, 0, 0,
- 176, 0, 0, 0, 3, 0,
- 0, 0, 1, 0, 0, 0,
- 0, 0, 0, 0, 0, 0,
- 0, 0, 255, 255, 255, 255,
- 0, 0, 0, 0, 0, 0,
- 0, 0
+ 255, 255
};
diff --git a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTx.pdb b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTx.pdb
index c0236c3f..bb30c82f 100644
Binary files a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTx.pdb and b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTx.pdb differ
diff --git a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFog.inc b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFog.inc
index d5c8519b..8c7e500f 100644
--- a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFog.inc
+++ b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFog.inc
@@ -42,7 +42,7 @@ rsq r0.w, r0.w
mul r1.xyz, r0.wwww, v3.xyzx
mul r2.xyz, r0.zxyz, r1.yzxy
mad r2.xyz, r0.yzxy, r1.zxyz, -r2.xyzx
-sample_indexable(texture2d)(float,float,float,float) r3.xyz, v0.xyxx, t2.xyzw, s0
+sample_indexable(texture2d)(float,float,float,float) r3.xyz, v0.xyxx, t1.xyzw, s0
mad r3.xyz, r3.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
mul r2.xyz, r2.xyzx, r3.yyyy
mad r1.xyz, r3.xxxx, r1.xyzx, r2.xyzx
@@ -81,7 +81,7 @@ mul r2.xyz, r1.yyyy, cb0[10].xyzx
mad r1.xyw, r1.xxxx, cb0[9].xyxz, r2.xyxz
mad r1.xyz, r1.zzzz, cb0[11].xyzx, r1.xywx
mul r1.xyz, r1.xyzx, cb0[2].xyzx
-sample_indexable(texture2d)(float,float,float,float) r2.xyz, v0.xyxx, t1.xyzw, s0
+sample_indexable(texture2d)(float,float,float,float) r2.xyz, v0.xyxx, t2.xyzw, s0
mul r1.xyz, r1.xyzx, r2.xyzx
sample_indexable(texture2d)(float,float,float,float) r2.xyzw, v0.xyxx, t0.xyzw, s0
mul r2.xyzw, r2.xyzw, v4.xyzw
@@ -98,10 +98,10 @@ ret
const BYTE NormalMapEffect_PSNormalPixelLightingTxNoFog[] =
{
- 68, 88, 66, 67, 155, 144,
- 30, 193, 114, 126, 148, 168,
- 172, 171, 87, 43, 94, 51,
- 202, 17, 1, 0, 0, 0,
+ 68, 88, 66, 67, 42, 169,
+ 244, 57, 144, 69, 29, 18,
+ 186, 46, 253, 17, 81, 255,
+ 230, 210, 1, 0, 0, 0,
204, 9, 0, 0, 4, 0,
0, 0, 48, 0, 0, 0,
200, 0, 0, 0, 252, 0,
@@ -211,7 +211,7 @@ const BYTE NormalMapEffect_PSNormalPixelLightingTxNoFog[] =
114, 0, 16, 0, 3, 0,
0, 0, 70, 16, 16, 0,
0, 0, 0, 0, 70, 126,
- 16, 0, 2, 0, 0, 0,
+ 16, 0, 1, 0, 0, 0,
0, 96, 16, 0, 0, 0,
0, 0, 50, 0, 0, 15,
114, 0, 16, 0, 3, 0,
@@ -421,7 +421,7 @@ const BYTE NormalMapEffect_PSNormalPixelLightingTxNoFog[] =
114, 0, 16, 0, 2, 0,
0, 0, 70, 16, 16, 0,
0, 0, 0, 0, 70, 126,
- 16, 0, 1, 0, 0, 0,
+ 16, 0, 2, 0, 0, 0,
0, 96, 16, 0, 0, 0,
0, 0, 56, 0, 0, 7,
114, 0, 16, 0, 1, 0,
@@ -492,10 +492,10 @@ const BYTE NormalMapEffect_PSNormalPixelLightingTxNoFog[] =
0, 0, 112, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 140, 0, 0, 0,
- 0, 0, 0, 0, 0, 0,
- 0, 0, 168, 0, 0, 0,
2, 0, 0, 0, 0, 0,
- 0, 0, 196, 0, 0, 0,
+ 0, 0, 168, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 176, 0, 0, 0,
1, 0, 0, 0, 92, 0,
0, 0, 0, 0, 0, 0,
1, 0, 0, 0, 0, 0,
@@ -506,14 +506,14 @@ const BYTE NormalMapEffect_PSNormalPixelLightingTxNoFog[] =
0, 0, 1, 0, 0, 0,
0, 0, 0, 0, 255, 255,
255, 255, 1, 0, 0, 0,
- 148, 0, 0, 0, 0, 0,
+ 148, 0, 0, 0, 3, 0,
0, 0, 1, 0, 0, 0,
- 2, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
0, 0, 255, 255, 255, 255,
- 1, 0, 0, 0, 176, 0,
- 0, 0, 3, 0, 0, 0,
- 1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
- 255, 255, 255, 255, 0, 0,
- 0, 0, 0, 0, 0, 0
+ 0, 0, 1, 0, 0, 0,
+ 184, 0, 0, 0, 0, 0,
+ 0, 0, 1, 0, 0, 0,
+ 2, 0, 0, 0, 0, 0,
+ 0, 0, 255, 255, 255, 255
};
diff --git a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFog.pdb b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFog.pdb
index 027d93b7..d56d0ad7 100644
Binary files a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFog.pdb and b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFog.pdb differ
diff --git a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFogSpec.inc b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFogSpec.inc
index 44c9c8e1..44a74fe4 100644
--- a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFogSpec.inc
+++ b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFogSpec.inc
@@ -25,7 +25,7 @@ dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB0[13], immediateIndexed
dcl_sampler s0, mode_default
dcl_resource_texture2d (float,float,float,float) t0
-dcl_resource_texture2d (float,float,float,float) t2
+dcl_resource_texture2d (float,float,float,float) t1
dcl_input_ps linear v0.xy
dcl_input_ps linear v1.xyz
dcl_input_ps linear v2.xyz
@@ -41,7 +41,7 @@ rsq r0.w, r0.w
mul r1.xyz, r0.wwww, v3.xyzx
mul r2.xyz, r0.zxyz, r1.yzxy
mad r2.xyz, r0.yzxy, r1.zxyz, -r2.xyzx
-sample_indexable(texture2d)(float,float,float,float) r3.xyz, v0.xyxx, t2.xyzw, s0
+sample_indexable(texture2d)(float,float,float,float) r3.xyz, v0.xyxx, t1.xyzw, s0
mad r3.xyz, r3.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
mul r2.xyz, r2.xyzx, r3.yyyy
mad r1.xyz, r3.xxxx, r1.xyzx, r2.xyzx
@@ -95,11 +95,11 @@ ret
const BYTE NormalMapEffect_PSNormalPixelLightingTxNoFogSpec[] =
{
- 68, 88, 66, 67, 113, 31,
- 174, 83, 60, 32, 246, 226,
- 129, 131, 199, 253, 88, 44,
- 132, 235, 1, 0, 0, 0,
- 116, 9, 0, 0, 4, 0,
+ 68, 88, 66, 67, 235, 56,
+ 174, 67, 223, 146, 195, 29,
+ 122, 155, 213, 89, 180, 160,
+ 46, 17, 1, 0, 0, 0,
+ 76, 9, 0, 0, 4, 0,
0, 0, 48, 0, 0, 0,
200, 0, 0, 0, 252, 0,
0, 0, 160, 8, 0, 0,
@@ -149,7 +149,7 @@ const BYTE NormalMapEffect_PSNormalPixelLightingTxNoFogSpec[] =
16, 0, 0, 0, 0, 0,
85, 85, 0, 0, 88, 24,
0, 4, 0, 112, 16, 0,
- 2, 0, 0, 0, 85, 85,
+ 1, 0, 0, 0, 85, 85,
0, 0, 98, 16, 0, 3,
50, 16, 16, 0, 0, 0,
0, 0, 98, 16, 0, 3,
@@ -205,7 +205,7 @@ const BYTE NormalMapEffect_PSNormalPixelLightingTxNoFogSpec[] =
21, 0, 114, 0, 16, 0,
3, 0, 0, 0, 70, 16,
16, 0, 0, 0, 0, 0,
- 70, 126, 16, 0, 2, 0,
+ 70, 126, 16, 0, 1, 0,
0, 0, 0, 96, 16, 0,
0, 0, 0, 0, 50, 0,
0, 15, 114, 0, 16, 0,
@@ -463,40 +463,33 @@ const BYTE NormalMapEffect_PSNormalPixelLightingTxNoFogSpec[] =
16, 0, 0, 0, 0, 0,
58, 0, 16, 0, 2, 0,
0, 0, 62, 0, 0, 1,
- 82, 84, 83, 48, 204, 0,
+ 82, 84, 83, 48, 164, 0,
0, 0, 1, 0, 0, 0,
- 5, 0, 0, 0, 24, 0,
+ 4, 0, 0, 0, 24, 0,
0, 0, 0, 0, 0, 0,
- 204, 0, 0, 0, 29, 0,
+ 164, 0, 0, 0, 29, 0,
0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 84, 0,
+ 0, 0, 0, 0, 72, 0,
0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 112, 0,
+ 0, 0, 0, 0, 100, 0,
0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 140, 0,
- 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 168, 0,
+ 0, 0, 0, 0, 128, 0,
0, 0, 2, 0, 0, 0,
- 0, 0, 0, 0, 196, 0,
+ 0, 0, 0, 0, 156, 0,
0, 0, 1, 0, 0, 0,
- 92, 0, 0, 0, 0, 0,
+ 80, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
0, 0, 0, 0, 0, 0,
0, 0, 255, 255, 255, 255,
- 1, 0, 0, 0, 120, 0,
+ 1, 0, 0, 0, 108, 0,
0, 0, 0, 0, 0, 0,
1, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0,
255, 255, 255, 255, 1, 0,
- 0, 0, 148, 0, 0, 0,
- 0, 0, 0, 0, 1, 0,
- 0, 0, 2, 0, 0, 0,
- 0, 0, 0, 0, 255, 255,
- 255, 255, 1, 0, 0, 0,
- 176, 0, 0, 0, 3, 0,
- 0, 0, 1, 0, 0, 0,
- 0, 0, 0, 0, 0, 0,
- 0, 0, 255, 255, 255, 255,
+ 0, 0, 136, 0, 0, 0,
+ 3, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0,
- 0, 0
+ 0, 0, 0, 0, 255, 255,
+ 255, 255, 0, 0, 0, 0,
+ 0, 0, 0, 0
};
diff --git a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFogSpec.pdb b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFogSpec.pdb
index a2232d72..ad747a7c 100644
Binary files a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFogSpec.pdb and b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoFogSpec.pdb differ
diff --git a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoSpec.inc b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoSpec.inc
index 1e9e43d9..283b321b 100644
--- a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoSpec.inc
+++ b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoSpec.inc
@@ -25,7 +25,7 @@ dcl_globalFlags refactoringAllowed
dcl_constantbuffer CB0[14], immediateIndexed
dcl_sampler s0, mode_default
dcl_resource_texture2d (float,float,float,float) t0
-dcl_resource_texture2d (float,float,float,float) t2
+dcl_resource_texture2d (float,float,float,float) t1
dcl_input_ps linear v0.xy
dcl_input_ps linear v1.xyzw
dcl_input_ps linear v2.xyz
@@ -41,7 +41,7 @@ rsq r0.w, r0.w
mul r1.xyz, r0.wwww, v3.xyzx
mul r2.xyz, r0.zxyz, r1.yzxy
mad r2.xyz, r0.yzxy, r1.zxyz, -r2.xyzx
-sample_indexable(texture2d)(float,float,float,float) r3.xyz, v0.xyxx, t2.xyzw, s0
+sample_indexable(texture2d)(float,float,float,float) r3.xyz, v0.xyxx, t1.xyzw, s0
mad r3.xyz, r3.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
mul r2.xyz, r2.xyzx, r3.yyyy
mad r1.xyz, r3.xxxx, r1.xyzx, r2.xyzx
@@ -97,11 +97,11 @@ ret
const BYTE NormalMapEffect_PSNormalPixelLightingTxNoSpec[] =
{
- 68, 88, 66, 67, 245, 245,
- 193, 7, 155, 184, 12, 59,
- 56, 221, 121, 38, 203, 79,
- 137, 46, 1, 0, 0, 0,
- 196, 9, 0, 0, 4, 0,
+ 68, 88, 66, 67, 121, 116,
+ 186, 89, 234, 243, 112, 23,
+ 156, 158, 87, 3, 9, 208,
+ 64, 3, 1, 0, 0, 0,
+ 156, 9, 0, 0, 4, 0,
0, 0, 48, 0, 0, 0,
200, 0, 0, 0, 252, 0,
0, 0, 240, 8, 0, 0,
@@ -151,7 +151,7 @@ const BYTE NormalMapEffect_PSNormalPixelLightingTxNoSpec[] =
16, 0, 0, 0, 0, 0,
85, 85, 0, 0, 88, 24,
0, 4, 0, 112, 16, 0,
- 2, 0, 0, 0, 85, 85,
+ 1, 0, 0, 0, 85, 85,
0, 0, 98, 16, 0, 3,
50, 16, 16, 0, 0, 0,
0, 0, 98, 16, 0, 3,
@@ -207,7 +207,7 @@ const BYTE NormalMapEffect_PSNormalPixelLightingTxNoSpec[] =
21, 0, 114, 0, 16, 0,
3, 0, 0, 0, 70, 16,
16, 0, 0, 0, 0, 0,
- 70, 126, 16, 0, 2, 0,
+ 70, 126, 16, 0, 1, 0,
0, 0, 0, 96, 16, 0,
0, 0, 0, 0, 50, 0,
0, 15, 114, 0, 16, 0,
@@ -479,39 +479,32 @@ const BYTE NormalMapEffect_PSNormalPixelLightingTxNoSpec[] =
0, 0, 58, 0, 16, 0,
2, 0, 0, 0, 62, 0,
0, 1, 82, 84, 83, 48,
- 204, 0, 0, 0, 1, 0,
- 0, 0, 5, 0, 0, 0,
+ 164, 0, 0, 0, 1, 0,
+ 0, 0, 4, 0, 0, 0,
24, 0, 0, 0, 0, 0,
- 0, 0, 204, 0, 0, 0,
+ 0, 0, 164, 0, 0, 0,
29, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
- 84, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 0, 0,
- 112, 0, 0, 0, 0, 0,
+ 72, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
- 140, 0, 0, 0, 0, 0,
+ 100, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
- 168, 0, 0, 0, 2, 0,
+ 128, 0, 0, 0, 2, 0,
0, 0, 0, 0, 0, 0,
- 196, 0, 0, 0, 1, 0,
- 0, 0, 92, 0, 0, 0,
+ 156, 0, 0, 0, 1, 0,
+ 0, 0, 80, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 255, 255,
255, 255, 1, 0, 0, 0,
- 120, 0, 0, 0, 0, 0,
+ 108, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
1, 0, 0, 0, 0, 0,
0, 0, 255, 255, 255, 255,
- 1, 0, 0, 0, 148, 0,
- 0, 0, 0, 0, 0, 0,
- 1, 0, 0, 0, 2, 0,
- 0, 0, 0, 0, 0, 0,
- 255, 255, 255, 255, 1, 0,
- 0, 0, 176, 0, 0, 0,
- 3, 0, 0, 0, 1, 0,
+ 1, 0, 0, 0, 136, 0,
+ 0, 0, 3, 0, 0, 0,
+ 1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 255, 255,
- 255, 255, 0, 0, 0, 0,
- 0, 0, 0, 0
+ 255, 255, 255, 255, 0, 0,
+ 0, 0, 0, 0, 0, 0
};
diff --git a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoSpec.pdb b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoSpec.pdb
index 985e2f60..dc628af9 100644
Binary files a/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoSpec.pdb and b/Src/Shaders/Compiled/NormalMapEffect_PSNormalPixelLightingTxNoSpec.pdb differ
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTx.inc b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTx.inc
index 9464e9a9..e207d413 100644
--- a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTx.inc
+++ b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTx.inc
@@ -67,10 +67,10 @@ ret
const BYTE NormalMapEffect_VSNormalPixelLightingTx[] =
{
- 68, 88, 66, 67, 60, 118,
- 56, 30, 174, 106, 37, 227,
- 64, 98, 149, 19, 44, 141,
- 54, 244, 1, 0, 0, 0,
+ 68, 88, 66, 67, 15, 29,
+ 214, 5, 217, 154, 216, 97,
+ 111, 52, 221, 101, 26, 4,
+ 131, 226, 1, 0, 0, 0,
164, 5, 0, 0, 4, 0,
0, 0, 48, 0, 0, 0,
196, 0, 0, 0, 128, 1,
@@ -283,11 +283,11 @@ const BYTE NormalMapEffect_VSNormalPixelLightingTx[] =
0, 0, 0, 0, 0, 0,
112, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
- 140, 0, 0, 0, 0, 0,
+ 140, 0, 0, 0, 2, 0,
0, 0, 0, 0, 0, 0,
- 168, 0, 0, 0, 2, 0,
+ 168, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
- 196, 0, 0, 0, 1, 0,
+ 176, 0, 0, 0, 1, 0,
0, 0, 92, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0,
@@ -298,14 +298,14 @@ const BYTE NormalMapEffect_VSNormalPixelLightingTx[] =
1, 0, 0, 0, 0, 0,
0, 0, 255, 255, 255, 255,
1, 0, 0, 0, 148, 0,
+ 0, 0, 3, 0, 0, 0,
+ 1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
- 1, 0, 0, 0, 2, 0,
+ 255, 255, 255, 255, 0, 0,
0, 0, 0, 0, 0, 0,
- 255, 255, 255, 255, 1, 0,
- 0, 0, 176, 0, 0, 0,
- 3, 0, 0, 0, 1, 0,
+ 1, 0, 0, 0, 184, 0,
0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 255, 255,
- 255, 255, 0, 0, 0, 0,
- 0, 0, 0, 0
+ 1, 0, 0, 0, 2, 0,
+ 0, 0, 0, 0, 0, 0,
+ 255, 255, 255, 255
};
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTx.pdb b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTx.pdb
index 45cfc16c..f2359bcd 100644
Binary files a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTx.pdb and b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTx.pdb differ
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxBn.inc b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxBn.inc
index 9f7aa559..6245b283 100644
--- a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxBn.inc
+++ b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxBn.inc
@@ -69,10 +69,10 @@ ret
const BYTE NormalMapEffect_VSNormalPixelLightingTxBn[] =
{
- 68, 88, 66, 67, 181, 133,
- 176, 63, 239, 137, 131, 149,
- 101, 168, 237, 0, 177, 58,
- 68, 139, 1, 0, 0, 0,
+ 68, 88, 66, 67, 63, 209,
+ 30, 208, 1, 192, 56, 19,
+ 77, 33, 202, 129, 96, 98,
+ 246, 194, 1, 0, 0, 0,
28, 6, 0, 0, 4, 0,
0, 0, 48, 0, 0, 0,
196, 0, 0, 0, 128, 1,
@@ -305,11 +305,11 @@ const BYTE NormalMapEffect_VSNormalPixelLightingTxBn[] =
0, 0, 0, 0, 0, 0,
112, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
- 140, 0, 0, 0, 0, 0,
+ 140, 0, 0, 0, 2, 0,
0, 0, 0, 0, 0, 0,
- 168, 0, 0, 0, 2, 0,
+ 168, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
- 196, 0, 0, 0, 1, 0,
+ 176, 0, 0, 0, 1, 0,
0, 0, 92, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 0, 0, 0, 0,
@@ -320,14 +320,14 @@ const BYTE NormalMapEffect_VSNormalPixelLightingTxBn[] =
1, 0, 0, 0, 0, 0,
0, 0, 255, 255, 255, 255,
1, 0, 0, 0, 148, 0,
+ 0, 0, 3, 0, 0, 0,
+ 1, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0,
- 1, 0, 0, 0, 2, 0,
+ 255, 255, 255, 255, 0, 0,
0, 0, 0, 0, 0, 0,
- 255, 255, 255, 255, 1, 0,
- 0, 0, 176, 0, 0, 0,
- 3, 0, 0, 0, 1, 0,
+ 1, 0, 0, 0, 184, 0,
0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 255, 255,
- 255, 255, 0, 0, 0, 0,
- 0, 0, 0, 0
+ 1, 0, 0, 0, 2, 0,
+ 0, 0, 0, 0, 0, 0,
+ 255, 255, 255, 255
};
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxBn.pdb b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxBn.pdb
index 6cfd6eed..ceb61ea7 100644
Binary files a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxBn.pdb and b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxBn.pdb differ
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxNoSpec.inc b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxNoSpec.inc
new file mode 100644
index 00000000..e97b2c64
--- /dev/null
+++ b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxNoSpec.inc
@@ -0,0 +1,304 @@
+#if 0
+//
+// Generated by Microsoft (R) D3D Shader Disassembler
+//
+//
+// Input signature:
+//
+// Name Index Mask Register SysValue Format Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position 0 xyzw 0 NONE float xyzw
+// NORMAL 0 xyz 1 NONE float xyz
+// TANGENT 0 xyzw 2 NONE float xyz
+// TEXCOORD 0 xy 3 NONE float xy
+//
+//
+// Output signature:
+//
+// Name Index Mask Register SysValue Format Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// TEXCOORD 0 xy 0 NONE float xy
+// TEXCOORD 1 xyzw 1 NONE float xyzw
+// TEXCOORD 2 xyz 2 NONE float xyz
+// TEXCOORD 3 xyz 3 NONE float xyz
+// COLOR 0 xyzw 4 NONE float xyzw
+// SV_Position 0 xyzw 5 POS float xyzw
+//
+vs_5_0
+dcl_globalFlags refactoringAllowed
+dcl_constantbuffer CB0[26], immediateIndexed
+dcl_input v0.xyzw
+dcl_input v1.xyz
+dcl_input v2.xyz
+dcl_input v3.xy
+dcl_output o0.xy
+dcl_output o1.xyzw
+dcl_output o2.xyz
+dcl_output o3.xyz
+dcl_output o4.xyzw
+dcl_output_siv o5.xyzw, position
+dcl_temps 1
+mov o0.xy, v3.xyxx
+dp4 o1.x, v0.xyzw, cb0[15].xyzw
+dp4 o1.y, v0.xyzw, cb0[16].xyzw
+dp4 o1.z, v0.xyzw, cb0[17].xyzw
+dp4_sat o1.w, v0.xyzw, cb0[14].xyzw
+dp3 r0.x, v1.xyzx, cb0[19].xyzx
+dp3 r0.y, v1.xyzx, cb0[20].xyzx
+dp3 r0.z, v1.xyzx, cb0[21].xyzx
+dp3 r0.w, r0.xyzx, r0.xyzx
+rsq r0.w, r0.w
+mul o2.xyz, r0.wwww, r0.xyzx
+dp3 r0.x, v2.xyzx, cb0[19].xyzx
+dp3 r0.y, v2.xyzx, cb0[20].xyzx
+dp3 r0.z, v2.xyzx, cb0[21].xyzx
+dp3 r0.w, r0.xyzx, r0.xyzx
+rsq r0.w, r0.w
+mul o3.xyz, r0.wwww, r0.xyzx
+mov o4.xyz, l(1.000000,1.000000,1.000000,0)
+mov o4.w, cb0[0].w
+dp4 o5.x, v0.xyzw, cb0[22].xyzw
+dp4 o5.y, v0.xyzw, cb0[23].xyzw
+dp4 o5.z, v0.xyzw, cb0[24].xyzw
+dp4 o5.w, v0.xyzw, cb0[25].xyzw
+ret
+// Approximately 0 instruction slots used
+#endif
+
+const BYTE NormalMapEffect_VSNormalPixelLightingTxNoSpec[] =
+{
+ 68, 88, 66, 67, 127, 8,
+ 186, 142, 88, 23, 198, 112,
+ 23, 189, 26, 52, 251, 251,
+ 84, 147, 1, 0, 0, 0,
+ 124, 5, 0, 0, 4, 0,
+ 0, 0, 48, 0, 0, 0,
+ 196, 0, 0, 0, 128, 1,
+ 0, 0, 208, 4, 0, 0,
+ 73, 83, 71, 78, 140, 0,
+ 0, 0, 4, 0, 0, 0,
+ 8, 0, 0, 0, 104, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 0, 0, 0, 0,
+ 15, 15, 0, 0, 116, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 1, 0, 0, 0,
+ 7, 7, 0, 0, 123, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 2, 0, 0, 0,
+ 15, 7, 0, 0, 131, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 3, 0, 0, 0,
+ 3, 3, 0, 0, 83, 86,
+ 95, 80, 111, 115, 105, 116,
+ 105, 111, 110, 0, 78, 79,
+ 82, 77, 65, 76, 0, 84,
+ 65, 78, 71, 69, 78, 84,
+ 0, 84, 69, 88, 67, 79,
+ 79, 82, 68, 0, 79, 83,
+ 71, 78, 180, 0, 0, 0,
+ 6, 0, 0, 0, 8, 0,
+ 0, 0, 152, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 0, 0, 0,
+ 0, 0, 0, 0, 3, 12,
+ 0, 0, 152, 0, 0, 0,
+ 1, 0, 0, 0, 0, 0,
+ 0, 0, 3, 0, 0, 0,
+ 1, 0, 0, 0, 15, 0,
+ 0, 0, 152, 0, 0, 0,
+ 2, 0, 0, 0, 0, 0,
+ 0, 0, 3, 0, 0, 0,
+ 2, 0, 0, 0, 7, 8,
+ 0, 0, 152, 0, 0, 0,
+ 3, 0, 0, 0, 0, 0,
+ 0, 0, 3, 0, 0, 0,
+ 3, 0, 0, 0, 7, 8,
+ 0, 0, 161, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 0, 0, 0,
+ 4, 0, 0, 0, 15, 0,
+ 0, 0, 167, 0, 0, 0,
+ 0, 0, 0, 0, 1, 0,
+ 0, 0, 3, 0, 0, 0,
+ 5, 0, 0, 0, 15, 0,
+ 0, 0, 84, 69, 88, 67,
+ 79, 79, 82, 68, 0, 67,
+ 79, 76, 79, 82, 0, 83,
+ 86, 95, 80, 111, 115, 105,
+ 116, 105, 111, 110, 0, 171,
+ 83, 72, 69, 88, 72, 3,
+ 0, 0, 80, 0, 1, 0,
+ 210, 0, 0, 0, 106, 8,
+ 0, 1, 89, 0, 0, 4,
+ 70, 142, 32, 0, 0, 0,
+ 0, 0, 26, 0, 0, 0,
+ 95, 0, 0, 3, 242, 16,
+ 16, 0, 0, 0, 0, 0,
+ 95, 0, 0, 3, 114, 16,
+ 16, 0, 1, 0, 0, 0,
+ 95, 0, 0, 3, 114, 16,
+ 16, 0, 2, 0, 0, 0,
+ 95, 0, 0, 3, 50, 16,
+ 16, 0, 3, 0, 0, 0,
+ 101, 0, 0, 3, 50, 32,
+ 16, 0, 0, 0, 0, 0,
+ 101, 0, 0, 3, 242, 32,
+ 16, 0, 1, 0, 0, 0,
+ 101, 0, 0, 3, 114, 32,
+ 16, 0, 2, 0, 0, 0,
+ 101, 0, 0, 3, 114, 32,
+ 16, 0, 3, 0, 0, 0,
+ 101, 0, 0, 3, 242, 32,
+ 16, 0, 4, 0, 0, 0,
+ 103, 0, 0, 4, 242, 32,
+ 16, 0, 5, 0, 0, 0,
+ 1, 0, 0, 0, 104, 0,
+ 0, 2, 1, 0, 0, 0,
+ 54, 0, 0, 5, 50, 32,
+ 16, 0, 0, 0, 0, 0,
+ 70, 16, 16, 0, 3, 0,
+ 0, 0, 17, 0, 0, 8,
+ 18, 32, 16, 0, 1, 0,
+ 0, 0, 70, 30, 16, 0,
+ 0, 0, 0, 0, 70, 142,
+ 32, 0, 0, 0, 0, 0,
+ 15, 0, 0, 0, 17, 0,
+ 0, 8, 34, 32, 16, 0,
+ 1, 0, 0, 0, 70, 30,
+ 16, 0, 0, 0, 0, 0,
+ 70, 142, 32, 0, 0, 0,
+ 0, 0, 16, 0, 0, 0,
+ 17, 0, 0, 8, 66, 32,
+ 16, 0, 1, 0, 0, 0,
+ 70, 30, 16, 0, 0, 0,
+ 0, 0, 70, 142, 32, 0,
+ 0, 0, 0, 0, 17, 0,
+ 0, 0, 17, 32, 0, 8,
+ 130, 32, 16, 0, 1, 0,
+ 0, 0, 70, 30, 16, 0,
+ 0, 0, 0, 0, 70, 142,
+ 32, 0, 0, 0, 0, 0,
+ 14, 0, 0, 0, 16, 0,
+ 0, 8, 18, 0, 16, 0,
+ 0, 0, 0, 0, 70, 18,
+ 16, 0, 1, 0, 0, 0,
+ 70, 130, 32, 0, 0, 0,
+ 0, 0, 19, 0, 0, 0,
+ 16, 0, 0, 8, 34, 0,
+ 16, 0, 0, 0, 0, 0,
+ 70, 18, 16, 0, 1, 0,
+ 0, 0, 70, 130, 32, 0,
+ 0, 0, 0, 0, 20, 0,
+ 0, 0, 16, 0, 0, 8,
+ 66, 0, 16, 0, 0, 0,
+ 0, 0, 70, 18, 16, 0,
+ 1, 0, 0, 0, 70, 130,
+ 32, 0, 0, 0, 0, 0,
+ 21, 0, 0, 0, 16, 0,
+ 0, 7, 130, 0, 16, 0,
+ 0, 0, 0, 0, 70, 2,
+ 16, 0, 0, 0, 0, 0,
+ 70, 2, 16, 0, 0, 0,
+ 0, 0, 68, 0, 0, 5,
+ 130, 0, 16, 0, 0, 0,
+ 0, 0, 58, 0, 16, 0,
+ 0, 0, 0, 0, 56, 0,
+ 0, 7, 114, 32, 16, 0,
+ 2, 0, 0, 0, 246, 15,
+ 16, 0, 0, 0, 0, 0,
+ 70, 2, 16, 0, 0, 0,
+ 0, 0, 16, 0, 0, 8,
+ 18, 0, 16, 0, 0, 0,
+ 0, 0, 70, 18, 16, 0,
+ 2, 0, 0, 0, 70, 130,
+ 32, 0, 0, 0, 0, 0,
+ 19, 0, 0, 0, 16, 0,
+ 0, 8, 34, 0, 16, 0,
+ 0, 0, 0, 0, 70, 18,
+ 16, 0, 2, 0, 0, 0,
+ 70, 130, 32, 0, 0, 0,
+ 0, 0, 20, 0, 0, 0,
+ 16, 0, 0, 8, 66, 0,
+ 16, 0, 0, 0, 0, 0,
+ 70, 18, 16, 0, 2, 0,
+ 0, 0, 70, 130, 32, 0,
+ 0, 0, 0, 0, 21, 0,
+ 0, 0, 16, 0, 0, 7,
+ 130, 0, 16, 0, 0, 0,
+ 0, 0, 70, 2, 16, 0,
+ 0, 0, 0, 0, 70, 2,
+ 16, 0, 0, 0, 0, 0,
+ 68, 0, 0, 5, 130, 0,
+ 16, 0, 0, 0, 0, 0,
+ 58, 0, 16, 0, 0, 0,
+ 0, 0, 56, 0, 0, 7,
+ 114, 32, 16, 0, 3, 0,
+ 0, 0, 246, 15, 16, 0,
+ 0, 0, 0, 0, 70, 2,
+ 16, 0, 0, 0, 0, 0,
+ 54, 0, 0, 8, 114, 32,
+ 16, 0, 4, 0, 0, 0,
+ 2, 64, 0, 0, 0, 0,
+ 128, 63, 0, 0, 128, 63,
+ 0, 0, 128, 63, 0, 0,
+ 0, 0, 54, 0, 0, 6,
+ 130, 32, 16, 0, 4, 0,
+ 0, 0, 58, 128, 32, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 17, 0, 0, 8,
+ 18, 32, 16, 0, 5, 0,
+ 0, 0, 70, 30, 16, 0,
+ 0, 0, 0, 0, 70, 142,
+ 32, 0, 0, 0, 0, 0,
+ 22, 0, 0, 0, 17, 0,
+ 0, 8, 34, 32, 16, 0,
+ 5, 0, 0, 0, 70, 30,
+ 16, 0, 0, 0, 0, 0,
+ 70, 142, 32, 0, 0, 0,
+ 0, 0, 23, 0, 0, 0,
+ 17, 0, 0, 8, 66, 32,
+ 16, 0, 5, 0, 0, 0,
+ 70, 30, 16, 0, 0, 0,
+ 0, 0, 70, 142, 32, 0,
+ 0, 0, 0, 0, 24, 0,
+ 0, 0, 17, 0, 0, 8,
+ 130, 32, 16, 0, 5, 0,
+ 0, 0, 70, 30, 16, 0,
+ 0, 0, 0, 0, 70, 142,
+ 32, 0, 0, 0, 0, 0,
+ 25, 0, 0, 0, 62, 0,
+ 0, 1, 82, 84, 83, 48,
+ 164, 0, 0, 0, 1, 0,
+ 0, 0, 4, 0, 0, 0,
+ 24, 0, 0, 0, 0, 0,
+ 0, 0, 164, 0, 0, 0,
+ 29, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 72, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 100, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 128, 0, 0, 0, 2, 0,
+ 0, 0, 0, 0, 0, 0,
+ 156, 0, 0, 0, 1, 0,
+ 0, 0, 80, 0, 0, 0,
+ 0, 0, 0, 0, 1, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 255, 255,
+ 255, 255, 1, 0, 0, 0,
+ 108, 0, 0, 0, 0, 0,
+ 0, 0, 1, 0, 0, 0,
+ 1, 0, 0, 0, 0, 0,
+ 0, 0, 255, 255, 255, 255,
+ 1, 0, 0, 0, 136, 0,
+ 0, 0, 3, 0, 0, 0,
+ 1, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 255, 255, 255, 255, 0, 0,
+ 0, 0, 0, 0, 0, 0
+};
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxNoSpec.pdb b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxNoSpec.pdb
new file mode 100644
index 00000000..e257d056
Binary files /dev/null and b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxNoSpec.pdb differ
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxNoSpecBn.inc b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxNoSpecBn.inc
new file mode 100644
index 00000000..e8dd1c1c
--- /dev/null
+++ b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxNoSpecBn.inc
@@ -0,0 +1,326 @@
+#if 0
+//
+// Generated by Microsoft (R) D3D Shader Disassembler
+//
+//
+// Input signature:
+//
+// Name Index Mask Register SysValue Format Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position 0 xyzw 0 NONE float xyzw
+// NORMAL 0 xyz 1 NONE float xyz
+// TANGENT 0 xyzw 2 NONE float xyz
+// TEXCOORD 0 xy 3 NONE float xy
+//
+//
+// Output signature:
+//
+// Name Index Mask Register SysValue Format Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// TEXCOORD 0 xy 0 NONE float xy
+// TEXCOORD 1 xyzw 1 NONE float xyzw
+// TEXCOORD 2 xyz 2 NONE float xyz
+// TEXCOORD 3 xyz 3 NONE float xyz
+// COLOR 0 xyzw 4 NONE float xyzw
+// SV_Position 0 xyzw 5 POS float xyzw
+//
+vs_5_0
+dcl_globalFlags refactoringAllowed
+dcl_constantbuffer CB0[26], immediateIndexed
+dcl_input v0.xyzw
+dcl_input v1.xyz
+dcl_input v2.xyz
+dcl_input v3.xy
+dcl_output o0.xy
+dcl_output o1.xyzw
+dcl_output o2.xyz
+dcl_output o3.xyz
+dcl_output o4.xyzw
+dcl_output_siv o5.xyzw, position
+dcl_temps 2
+mov o0.xy, v3.xyxx
+dp4 o1.x, v0.xyzw, cb0[15].xyzw
+dp4 o1.y, v0.xyzw, cb0[16].xyzw
+dp4 o1.z, v0.xyzw, cb0[17].xyzw
+dp4_sat o1.w, v0.xyzw, cb0[14].xyzw
+mad r0.xyz, v1.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
+dp3 r1.x, r0.xyzx, cb0[19].xyzx
+dp3 r1.y, r0.xyzx, cb0[20].xyzx
+dp3 r1.z, r0.xyzx, cb0[21].xyzx
+dp3 r0.x, r1.xyzx, r1.xyzx
+rsq r0.x, r0.x
+mul o2.xyz, r0.xxxx, r1.xyzx
+mad r0.xyz, v2.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
+dp3 r1.x, r0.xyzx, cb0[19].xyzx
+dp3 r1.y, r0.xyzx, cb0[20].xyzx
+dp3 r1.z, r0.xyzx, cb0[21].xyzx
+dp3 r0.x, r1.xyzx, r1.xyzx
+rsq r0.x, r0.x
+mul o3.xyz, r0.xxxx, r1.xyzx
+mov o4.xyz, l(1.000000,1.000000,1.000000,0)
+mov o4.w, cb0[0].w
+dp4 o5.x, v0.xyzw, cb0[22].xyzw
+dp4 o5.y, v0.xyzw, cb0[23].xyzw
+dp4 o5.z, v0.xyzw, cb0[24].xyzw
+dp4 o5.w, v0.xyzw, cb0[25].xyzw
+ret
+// Approximately 0 instruction slots used
+#endif
+
+const BYTE NormalMapEffect_VSNormalPixelLightingTxNoSpecBn[] =
+{
+ 68, 88, 66, 67, 229, 113,
+ 7, 109, 169, 39, 255, 121,
+ 159, 22, 233, 99, 176, 4,
+ 110, 194, 1, 0, 0, 0,
+ 244, 5, 0, 0, 4, 0,
+ 0, 0, 48, 0, 0, 0,
+ 196, 0, 0, 0, 128, 1,
+ 0, 0, 72, 5, 0, 0,
+ 73, 83, 71, 78, 140, 0,
+ 0, 0, 4, 0, 0, 0,
+ 8, 0, 0, 0, 104, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 0, 0, 0, 0,
+ 15, 15, 0, 0, 116, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 1, 0, 0, 0,
+ 7, 7, 0, 0, 123, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 2, 0, 0, 0,
+ 15, 7, 0, 0, 131, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 3, 0, 0, 0,
+ 3, 3, 0, 0, 83, 86,
+ 95, 80, 111, 115, 105, 116,
+ 105, 111, 110, 0, 78, 79,
+ 82, 77, 65, 76, 0, 84,
+ 65, 78, 71, 69, 78, 84,
+ 0, 84, 69, 88, 67, 79,
+ 79, 82, 68, 0, 79, 83,
+ 71, 78, 180, 0, 0, 0,
+ 6, 0, 0, 0, 8, 0,
+ 0, 0, 152, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 0, 0, 0,
+ 0, 0, 0, 0, 3, 12,
+ 0, 0, 152, 0, 0, 0,
+ 1, 0, 0, 0, 0, 0,
+ 0, 0, 3, 0, 0, 0,
+ 1, 0, 0, 0, 15, 0,
+ 0, 0, 152, 0, 0, 0,
+ 2, 0, 0, 0, 0, 0,
+ 0, 0, 3, 0, 0, 0,
+ 2, 0, 0, 0, 7, 8,
+ 0, 0, 152, 0, 0, 0,
+ 3, 0, 0, 0, 0, 0,
+ 0, 0, 3, 0, 0, 0,
+ 3, 0, 0, 0, 7, 8,
+ 0, 0, 161, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 3, 0, 0, 0,
+ 4, 0, 0, 0, 15, 0,
+ 0, 0, 167, 0, 0, 0,
+ 0, 0, 0, 0, 1, 0,
+ 0, 0, 3, 0, 0, 0,
+ 5, 0, 0, 0, 15, 0,
+ 0, 0, 84, 69, 88, 67,
+ 79, 79, 82, 68, 0, 67,
+ 79, 76, 79, 82, 0, 83,
+ 86, 95, 80, 111, 115, 105,
+ 116, 105, 111, 110, 0, 171,
+ 83, 72, 69, 88, 192, 3,
+ 0, 0, 80, 0, 1, 0,
+ 240, 0, 0, 0, 106, 8,
+ 0, 1, 89, 0, 0, 4,
+ 70, 142, 32, 0, 0, 0,
+ 0, 0, 26, 0, 0, 0,
+ 95, 0, 0, 3, 242, 16,
+ 16, 0, 0, 0, 0, 0,
+ 95, 0, 0, 3, 114, 16,
+ 16, 0, 1, 0, 0, 0,
+ 95, 0, 0, 3, 114, 16,
+ 16, 0, 2, 0, 0, 0,
+ 95, 0, 0, 3, 50, 16,
+ 16, 0, 3, 0, 0, 0,
+ 101, 0, 0, 3, 50, 32,
+ 16, 0, 0, 0, 0, 0,
+ 101, 0, 0, 3, 242, 32,
+ 16, 0, 1, 0, 0, 0,
+ 101, 0, 0, 3, 114, 32,
+ 16, 0, 2, 0, 0, 0,
+ 101, 0, 0, 3, 114, 32,
+ 16, 0, 3, 0, 0, 0,
+ 101, 0, 0, 3, 242, 32,
+ 16, 0, 4, 0, 0, 0,
+ 103, 0, 0, 4, 242, 32,
+ 16, 0, 5, 0, 0, 0,
+ 1, 0, 0, 0, 104, 0,
+ 0, 2, 2, 0, 0, 0,
+ 54, 0, 0, 5, 50, 32,
+ 16, 0, 0, 0, 0, 0,
+ 70, 16, 16, 0, 3, 0,
+ 0, 0, 17, 0, 0, 8,
+ 18, 32, 16, 0, 1, 0,
+ 0, 0, 70, 30, 16, 0,
+ 0, 0, 0, 0, 70, 142,
+ 32, 0, 0, 0, 0, 0,
+ 15, 0, 0, 0, 17, 0,
+ 0, 8, 34, 32, 16, 0,
+ 1, 0, 0, 0, 70, 30,
+ 16, 0, 0, 0, 0, 0,
+ 70, 142, 32, 0, 0, 0,
+ 0, 0, 16, 0, 0, 0,
+ 17, 0, 0, 8, 66, 32,
+ 16, 0, 1, 0, 0, 0,
+ 70, 30, 16, 0, 0, 0,
+ 0, 0, 70, 142, 32, 0,
+ 0, 0, 0, 0, 17, 0,
+ 0, 0, 17, 32, 0, 8,
+ 130, 32, 16, 0, 1, 0,
+ 0, 0, 70, 30, 16, 0,
+ 0, 0, 0, 0, 70, 142,
+ 32, 0, 0, 0, 0, 0,
+ 14, 0, 0, 0, 50, 0,
+ 0, 15, 114, 0, 16, 0,
+ 0, 0, 0, 0, 70, 18,
+ 16, 0, 1, 0, 0, 0,
+ 2, 64, 0, 0, 0, 0,
+ 0, 64, 0, 0, 0, 64,
+ 0, 0, 0, 64, 0, 0,
+ 0, 0, 2, 64, 0, 0,
+ 0, 0, 128, 191, 0, 0,
+ 128, 191, 0, 0, 128, 191,
+ 0, 0, 0, 0, 16, 0,
+ 0, 8, 18, 0, 16, 0,
+ 1, 0, 0, 0, 70, 2,
+ 16, 0, 0, 0, 0, 0,
+ 70, 130, 32, 0, 0, 0,
+ 0, 0, 19, 0, 0, 0,
+ 16, 0, 0, 8, 34, 0,
+ 16, 0, 1, 0, 0, 0,
+ 70, 2, 16, 0, 0, 0,
+ 0, 0, 70, 130, 32, 0,
+ 0, 0, 0, 0, 20, 0,
+ 0, 0, 16, 0, 0, 8,
+ 66, 0, 16, 0, 1, 0,
+ 0, 0, 70, 2, 16, 0,
+ 0, 0, 0, 0, 70, 130,
+ 32, 0, 0, 0, 0, 0,
+ 21, 0, 0, 0, 16, 0,
+ 0, 7, 18, 0, 16, 0,
+ 0, 0, 0, 0, 70, 2,
+ 16, 0, 1, 0, 0, 0,
+ 70, 2, 16, 0, 1, 0,
+ 0, 0, 68, 0, 0, 5,
+ 18, 0, 16, 0, 0, 0,
+ 0, 0, 10, 0, 16, 0,
+ 0, 0, 0, 0, 56, 0,
+ 0, 7, 114, 32, 16, 0,
+ 2, 0, 0, 0, 6, 0,
+ 16, 0, 0, 0, 0, 0,
+ 70, 2, 16, 0, 1, 0,
+ 0, 0, 50, 0, 0, 15,
+ 114, 0, 16, 0, 0, 0,
+ 0, 0, 70, 18, 16, 0,
+ 2, 0, 0, 0, 2, 64,
+ 0, 0, 0, 0, 0, 64,
+ 0, 0, 0, 64, 0, 0,
+ 0, 64, 0, 0, 0, 0,
+ 2, 64, 0, 0, 0, 0,
+ 128, 191, 0, 0, 128, 191,
+ 0, 0, 128, 191, 0, 0,
+ 0, 0, 16, 0, 0, 8,
+ 18, 0, 16, 0, 1, 0,
+ 0, 0, 70, 2, 16, 0,
+ 0, 0, 0, 0, 70, 130,
+ 32, 0, 0, 0, 0, 0,
+ 19, 0, 0, 0, 16, 0,
+ 0, 8, 34, 0, 16, 0,
+ 1, 0, 0, 0, 70, 2,
+ 16, 0, 0, 0, 0, 0,
+ 70, 130, 32, 0, 0, 0,
+ 0, 0, 20, 0, 0, 0,
+ 16, 0, 0, 8, 66, 0,
+ 16, 0, 1, 0, 0, 0,
+ 70, 2, 16, 0, 0, 0,
+ 0, 0, 70, 130, 32, 0,
+ 0, 0, 0, 0, 21, 0,
+ 0, 0, 16, 0, 0, 7,
+ 18, 0, 16, 0, 0, 0,
+ 0, 0, 70, 2, 16, 0,
+ 1, 0, 0, 0, 70, 2,
+ 16, 0, 1, 0, 0, 0,
+ 68, 0, 0, 5, 18, 0,
+ 16, 0, 0, 0, 0, 0,
+ 10, 0, 16, 0, 0, 0,
+ 0, 0, 56, 0, 0, 7,
+ 114, 32, 16, 0, 3, 0,
+ 0, 0, 6, 0, 16, 0,
+ 0, 0, 0, 0, 70, 2,
+ 16, 0, 1, 0, 0, 0,
+ 54, 0, 0, 8, 114, 32,
+ 16, 0, 4, 0, 0, 0,
+ 2, 64, 0, 0, 0, 0,
+ 128, 63, 0, 0, 128, 63,
+ 0, 0, 128, 63, 0, 0,
+ 0, 0, 54, 0, 0, 6,
+ 130, 32, 16, 0, 4, 0,
+ 0, 0, 58, 128, 32, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 17, 0, 0, 8,
+ 18, 32, 16, 0, 5, 0,
+ 0, 0, 70, 30, 16, 0,
+ 0, 0, 0, 0, 70, 142,
+ 32, 0, 0, 0, 0, 0,
+ 22, 0, 0, 0, 17, 0,
+ 0, 8, 34, 32, 16, 0,
+ 5, 0, 0, 0, 70, 30,
+ 16, 0, 0, 0, 0, 0,
+ 70, 142, 32, 0, 0, 0,
+ 0, 0, 23, 0, 0, 0,
+ 17, 0, 0, 8, 66, 32,
+ 16, 0, 5, 0, 0, 0,
+ 70, 30, 16, 0, 0, 0,
+ 0, 0, 70, 142, 32, 0,
+ 0, 0, 0, 0, 24, 0,
+ 0, 0, 17, 0, 0, 8,
+ 130, 32, 16, 0, 5, 0,
+ 0, 0, 70, 30, 16, 0,
+ 0, 0, 0, 0, 70, 142,
+ 32, 0, 0, 0, 0, 0,
+ 25, 0, 0, 0, 62, 0,
+ 0, 1, 82, 84, 83, 48,
+ 164, 0, 0, 0, 1, 0,
+ 0, 0, 4, 0, 0, 0,
+ 24, 0, 0, 0, 0, 0,
+ 0, 0, 164, 0, 0, 0,
+ 29, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 72, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 100, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 128, 0, 0, 0, 2, 0,
+ 0, 0, 0, 0, 0, 0,
+ 156, 0, 0, 0, 1, 0,
+ 0, 0, 80, 0, 0, 0,
+ 0, 0, 0, 0, 1, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 255, 255,
+ 255, 255, 1, 0, 0, 0,
+ 108, 0, 0, 0, 0, 0,
+ 0, 0, 1, 0, 0, 0,
+ 1, 0, 0, 0, 0, 0,
+ 0, 0, 255, 255, 255, 255,
+ 1, 0, 0, 0, 136, 0,
+ 0, 0, 3, 0, 0, 0,
+ 1, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 255, 255, 255, 255, 0, 0,
+ 0, 0, 0, 0, 0, 0
+};
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxNoSpecBn.pdb b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxNoSpecBn.pdb
new file mode 100644
index 00000000..084e5163
Binary files /dev/null and b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxNoSpecBn.pdb differ
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVc.inc b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVc.inc
index 97b8b8f3..68f7d69a 100644
--- a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVc.inc
+++ b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVc.inc
@@ -69,10 +69,10 @@ ret
const BYTE NormalMapEffect_VSNormalPixelLightingTxVc[] =
{
- 68, 88, 66, 67, 102, 72,
- 91, 194, 223, 229, 119, 133,
- 170, 233, 74, 223, 42, 86,
- 194, 205, 1, 0, 0, 0,
+ 68, 88, 66, 67, 230, 59,
+ 169, 64, 246, 100, 253, 22,
+ 164, 108, 55, 81, 166, 120,
+ 32, 238, 1, 0, 0, 0,
204, 5, 0, 0, 4, 0,
0, 0, 48, 0, 0, 0,
228, 0, 0, 0, 160, 1,
@@ -292,10 +292,10 @@ const BYTE NormalMapEffect_VSNormalPixelLightingTxVc[] =
0, 0, 0, 0, 112, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 140, 0,
- 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 168, 0,
0, 0, 2, 0, 0, 0,
- 0, 0, 0, 0, 196, 0,
+ 0, 0, 0, 0, 168, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 176, 0,
0, 0, 1, 0, 0, 0,
92, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
@@ -307,14 +307,14 @@ const BYTE NormalMapEffect_VSNormalPixelLightingTxVc[] =
0, 0, 0, 0, 0, 0,
255, 255, 255, 255, 1, 0,
0, 0, 148, 0, 0, 0,
+ 3, 0, 0, 0, 1, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 255, 255,
+ 255, 255, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1, 0,
+ 0, 0, 184, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 2, 0, 0, 0,
0, 0, 0, 0, 255, 255,
- 255, 255, 1, 0, 0, 0,
- 176, 0, 0, 0, 3, 0,
- 0, 0, 1, 0, 0, 0,
- 0, 0, 0, 0, 0, 0,
- 0, 0, 255, 255, 255, 255,
- 0, 0, 0, 0, 0, 0,
- 0, 0
+ 255, 255
};
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVc.pdb b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVc.pdb
index 5beeaf65..2e3a8d13 100644
Binary files a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVc.pdb and b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVc.pdb differ
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcBn.inc b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcBn.inc
index fdfd5be6..8ef48f91 100644
--- a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcBn.inc
+++ b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcBn.inc
@@ -71,10 +71,10 @@ ret
const BYTE NormalMapEffect_VSNormalPixelLightingTxVcBn[] =
{
- 68, 88, 66, 67, 22, 121,
- 0, 221, 213, 237, 115, 105,
- 30, 198, 4, 175, 10, 142,
- 229, 233, 1, 0, 0, 0,
+ 68, 88, 66, 67, 102, 232,
+ 199, 236, 21, 41, 245, 50,
+ 68, 123, 60, 34, 177, 81,
+ 88, 211, 1, 0, 0, 0,
68, 6, 0, 0, 4, 0,
0, 0, 48, 0, 0, 0,
228, 0, 0, 0, 160, 1,
@@ -314,10 +314,10 @@ const BYTE NormalMapEffect_VSNormalPixelLightingTxVcBn[] =
0, 0, 0, 0, 112, 0,
0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 140, 0,
- 0, 0, 0, 0, 0, 0,
- 0, 0, 0, 0, 168, 0,
0, 0, 2, 0, 0, 0,
- 0, 0, 0, 0, 196, 0,
+ 0, 0, 0, 0, 168, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 176, 0,
0, 0, 1, 0, 0, 0,
92, 0, 0, 0, 0, 0,
0, 0, 1, 0, 0, 0,
@@ -329,14 +329,14 @@ const BYTE NormalMapEffect_VSNormalPixelLightingTxVcBn[] =
0, 0, 0, 0, 0, 0,
255, 255, 255, 255, 1, 0,
0, 0, 148, 0, 0, 0,
+ 3, 0, 0, 0, 1, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 255, 255,
+ 255, 255, 0, 0, 0, 0,
+ 0, 0, 0, 0, 1, 0,
+ 0, 0, 184, 0, 0, 0,
0, 0, 0, 0, 1, 0,
0, 0, 2, 0, 0, 0,
0, 0, 0, 0, 255, 255,
- 255, 255, 1, 0, 0, 0,
- 176, 0, 0, 0, 3, 0,
- 0, 0, 1, 0, 0, 0,
- 0, 0, 0, 0, 0, 0,
- 0, 0, 255, 255, 255, 255,
- 0, 0, 0, 0, 0, 0,
- 0, 0
+ 255, 255
};
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcBn.pdb b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcBn.pdb
index ba3b59e1..5e4ad574 100644
Binary files a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcBn.pdb and b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcBn.pdb differ
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcNoSpec.inc b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcNoSpec.inc
new file mode 100644
index 00000000..39ae88ce
--- /dev/null
+++ b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcNoSpec.inc
@@ -0,0 +1,313 @@
+#if 0
+//
+// Generated by Microsoft (R) D3D Shader Disassembler
+//
+//
+// Input signature:
+//
+// Name Index Mask Register SysValue Format Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position 0 xyzw 0 NONE float xyzw
+// NORMAL 0 xyz 1 NONE float xyz
+// TANGENT 0 xyzw 2 NONE float xyz
+// TEXCOORD 0 xy 3 NONE float xy
+// COLOR 0 xyzw 4 NONE float xyzw
+//
+//
+// Output signature:
+//
+// Name Index Mask Register SysValue Format Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// TEXCOORD 0 xy 0 NONE float xy
+// TEXCOORD 1 xyzw 1 NONE float xyzw
+// TEXCOORD 2 xyz 2 NONE float xyz
+// TEXCOORD 3 xyz 3 NONE float xyz
+// COLOR 0 xyzw 4 NONE float xyzw
+// SV_Position 0 xyzw 5 POS float xyzw
+//
+vs_5_0
+dcl_globalFlags refactoringAllowed
+dcl_constantbuffer CB0[26], immediateIndexed
+dcl_input v0.xyzw
+dcl_input v1.xyz
+dcl_input v2.xyz
+dcl_input v3.xy
+dcl_input v4.xyzw
+dcl_output o0.xy
+dcl_output o1.xyzw
+dcl_output o2.xyz
+dcl_output o3.xyz
+dcl_output o4.xyzw
+dcl_output_siv o5.xyzw, position
+dcl_temps 1
+mov o0.xy, v3.xyxx
+dp4 o1.x, v0.xyzw, cb0[15].xyzw
+dp4 o1.y, v0.xyzw, cb0[16].xyzw
+dp4 o1.z, v0.xyzw, cb0[17].xyzw
+dp4_sat o1.w, v0.xyzw, cb0[14].xyzw
+dp3 r0.x, v1.xyzx, cb0[19].xyzx
+dp3 r0.y, v1.xyzx, cb0[20].xyzx
+dp3 r0.z, v1.xyzx, cb0[21].xyzx
+dp3 r0.w, r0.xyzx, r0.xyzx
+rsq r0.w, r0.w
+mul o2.xyz, r0.wwww, r0.xyzx
+dp3 r0.x, v2.xyzx, cb0[19].xyzx
+dp3 r0.y, v2.xyzx, cb0[20].xyzx
+dp3 r0.z, v2.xyzx, cb0[21].xyzx
+dp3 r0.w, r0.xyzx, r0.xyzx
+rsq r0.w, r0.w
+mul o3.xyz, r0.wwww, r0.xyzx
+mul o4.w, v4.w, cb0[0].w
+mov o4.xyz, v4.xyzx
+dp4 o5.x, v0.xyzw, cb0[22].xyzw
+dp4 o5.y, v0.xyzw, cb0[23].xyzw
+dp4 o5.z, v0.xyzw, cb0[24].xyzw
+dp4 o5.w, v0.xyzw, cb0[25].xyzw
+ret
+// Approximately 0 instruction slots used
+#endif
+
+const BYTE NormalMapEffect_VSNormalPixelLightingTxVcNoSpec[] =
+{
+ 68, 88, 66, 67, 51, 91,
+ 175, 202, 32, 190, 43, 126,
+ 181, 219, 41, 248, 80, 132,
+ 233, 140, 1, 0, 0, 0,
+ 164, 5, 0, 0, 4, 0,
+ 0, 0, 48, 0, 0, 0,
+ 228, 0, 0, 0, 160, 1,
+ 0, 0, 248, 4, 0, 0,
+ 73, 83, 71, 78, 172, 0,
+ 0, 0, 5, 0, 0, 0,
+ 8, 0, 0, 0, 128, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 0, 0, 0, 0,
+ 15, 15, 0, 0, 140, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 1, 0, 0, 0,
+ 7, 7, 0, 0, 147, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 2, 0, 0, 0,
+ 15, 7, 0, 0, 155, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 3, 0, 0, 0,
+ 3, 3, 0, 0, 164, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 4, 0, 0, 0,
+ 15, 15, 0, 0, 83, 86,
+ 95, 80, 111, 115, 105, 116,
+ 105, 111, 110, 0, 78, 79,
+ 82, 77, 65, 76, 0, 84,
+ 65, 78, 71, 69, 78, 84,
+ 0, 84, 69, 88, 67, 79,
+ 79, 82, 68, 0, 67, 79,
+ 76, 79, 82, 0, 171, 171,
+ 79, 83, 71, 78, 180, 0,
+ 0, 0, 6, 0, 0, 0,
+ 8, 0, 0, 0, 152, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 0, 0, 0, 0,
+ 3, 12, 0, 0, 152, 0,
+ 0, 0, 1, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 1, 0, 0, 0,
+ 15, 0, 0, 0, 152, 0,
+ 0, 0, 2, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 2, 0, 0, 0,
+ 7, 8, 0, 0, 152, 0,
+ 0, 0, 3, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 3, 0, 0, 0,
+ 7, 8, 0, 0, 161, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 4, 0, 0, 0,
+ 15, 0, 0, 0, 167, 0,
+ 0, 0, 0, 0, 0, 0,
+ 1, 0, 0, 0, 3, 0,
+ 0, 0, 5, 0, 0, 0,
+ 15, 0, 0, 0, 84, 69,
+ 88, 67, 79, 79, 82, 68,
+ 0, 67, 79, 76, 79, 82,
+ 0, 83, 86, 95, 80, 111,
+ 115, 105, 116, 105, 111, 110,
+ 0, 171, 83, 72, 69, 88,
+ 80, 3, 0, 0, 80, 0,
+ 1, 0, 212, 0, 0, 0,
+ 106, 8, 0, 1, 89, 0,
+ 0, 4, 70, 142, 32, 0,
+ 0, 0, 0, 0, 26, 0,
+ 0, 0, 95, 0, 0, 3,
+ 242, 16, 16, 0, 0, 0,
+ 0, 0, 95, 0, 0, 3,
+ 114, 16, 16, 0, 1, 0,
+ 0, 0, 95, 0, 0, 3,
+ 114, 16, 16, 0, 2, 0,
+ 0, 0, 95, 0, 0, 3,
+ 50, 16, 16, 0, 3, 0,
+ 0, 0, 95, 0, 0, 3,
+ 242, 16, 16, 0, 4, 0,
+ 0, 0, 101, 0, 0, 3,
+ 50, 32, 16, 0, 0, 0,
+ 0, 0, 101, 0, 0, 3,
+ 242, 32, 16, 0, 1, 0,
+ 0, 0, 101, 0, 0, 3,
+ 114, 32, 16, 0, 2, 0,
+ 0, 0, 101, 0, 0, 3,
+ 114, 32, 16, 0, 3, 0,
+ 0, 0, 101, 0, 0, 3,
+ 242, 32, 16, 0, 4, 0,
+ 0, 0, 103, 0, 0, 4,
+ 242, 32, 16, 0, 5, 0,
+ 0, 0, 1, 0, 0, 0,
+ 104, 0, 0, 2, 1, 0,
+ 0, 0, 54, 0, 0, 5,
+ 50, 32, 16, 0, 0, 0,
+ 0, 0, 70, 16, 16, 0,
+ 3, 0, 0, 0, 17, 0,
+ 0, 8, 18, 32, 16, 0,
+ 1, 0, 0, 0, 70, 30,
+ 16, 0, 0, 0, 0, 0,
+ 70, 142, 32, 0, 0, 0,
+ 0, 0, 15, 0, 0, 0,
+ 17, 0, 0, 8, 34, 32,
+ 16, 0, 1, 0, 0, 0,
+ 70, 30, 16, 0, 0, 0,
+ 0, 0, 70, 142, 32, 0,
+ 0, 0, 0, 0, 16, 0,
+ 0, 0, 17, 0, 0, 8,
+ 66, 32, 16, 0, 1, 0,
+ 0, 0, 70, 30, 16, 0,
+ 0, 0, 0, 0, 70, 142,
+ 32, 0, 0, 0, 0, 0,
+ 17, 0, 0, 0, 17, 32,
+ 0, 8, 130, 32, 16, 0,
+ 1, 0, 0, 0, 70, 30,
+ 16, 0, 0, 0, 0, 0,
+ 70, 142, 32, 0, 0, 0,
+ 0, 0, 14, 0, 0, 0,
+ 16, 0, 0, 8, 18, 0,
+ 16, 0, 0, 0, 0, 0,
+ 70, 18, 16, 0, 1, 0,
+ 0, 0, 70, 130, 32, 0,
+ 0, 0, 0, 0, 19, 0,
+ 0, 0, 16, 0, 0, 8,
+ 34, 0, 16, 0, 0, 0,
+ 0, 0, 70, 18, 16, 0,
+ 1, 0, 0, 0, 70, 130,
+ 32, 0, 0, 0, 0, 0,
+ 20, 0, 0, 0, 16, 0,
+ 0, 8, 66, 0, 16, 0,
+ 0, 0, 0, 0, 70, 18,
+ 16, 0, 1, 0, 0, 0,
+ 70, 130, 32, 0, 0, 0,
+ 0, 0, 21, 0, 0, 0,
+ 16, 0, 0, 7, 130, 0,
+ 16, 0, 0, 0, 0, 0,
+ 70, 2, 16, 0, 0, 0,
+ 0, 0, 70, 2, 16, 0,
+ 0, 0, 0, 0, 68, 0,
+ 0, 5, 130, 0, 16, 0,
+ 0, 0, 0, 0, 58, 0,
+ 16, 0, 0, 0, 0, 0,
+ 56, 0, 0, 7, 114, 32,
+ 16, 0, 2, 0, 0, 0,
+ 246, 15, 16, 0, 0, 0,
+ 0, 0, 70, 2, 16, 0,
+ 0, 0, 0, 0, 16, 0,
+ 0, 8, 18, 0, 16, 0,
+ 0, 0, 0, 0, 70, 18,
+ 16, 0, 2, 0, 0, 0,
+ 70, 130, 32, 0, 0, 0,
+ 0, 0, 19, 0, 0, 0,
+ 16, 0, 0, 8, 34, 0,
+ 16, 0, 0, 0, 0, 0,
+ 70, 18, 16, 0, 2, 0,
+ 0, 0, 70, 130, 32, 0,
+ 0, 0, 0, 0, 20, 0,
+ 0, 0, 16, 0, 0, 8,
+ 66, 0, 16, 0, 0, 0,
+ 0, 0, 70, 18, 16, 0,
+ 2, 0, 0, 0, 70, 130,
+ 32, 0, 0, 0, 0, 0,
+ 21, 0, 0, 0, 16, 0,
+ 0, 7, 130, 0, 16, 0,
+ 0, 0, 0, 0, 70, 2,
+ 16, 0, 0, 0, 0, 0,
+ 70, 2, 16, 0, 0, 0,
+ 0, 0, 68, 0, 0, 5,
+ 130, 0, 16, 0, 0, 0,
+ 0, 0, 58, 0, 16, 0,
+ 0, 0, 0, 0, 56, 0,
+ 0, 7, 114, 32, 16, 0,
+ 3, 0, 0, 0, 246, 15,
+ 16, 0, 0, 0, 0, 0,
+ 70, 2, 16, 0, 0, 0,
+ 0, 0, 56, 0, 0, 8,
+ 130, 32, 16, 0, 4, 0,
+ 0, 0, 58, 16, 16, 0,
+ 4, 0, 0, 0, 58, 128,
+ 32, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 54, 0,
+ 0, 5, 114, 32, 16, 0,
+ 4, 0, 0, 0, 70, 18,
+ 16, 0, 4, 0, 0, 0,
+ 17, 0, 0, 8, 18, 32,
+ 16, 0, 5, 0, 0, 0,
+ 70, 30, 16, 0, 0, 0,
+ 0, 0, 70, 142, 32, 0,
+ 0, 0, 0, 0, 22, 0,
+ 0, 0, 17, 0, 0, 8,
+ 34, 32, 16, 0, 5, 0,
+ 0, 0, 70, 30, 16, 0,
+ 0, 0, 0, 0, 70, 142,
+ 32, 0, 0, 0, 0, 0,
+ 23, 0, 0, 0, 17, 0,
+ 0, 8, 66, 32, 16, 0,
+ 5, 0, 0, 0, 70, 30,
+ 16, 0, 0, 0, 0, 0,
+ 70, 142, 32, 0, 0, 0,
+ 0, 0, 24, 0, 0, 0,
+ 17, 0, 0, 8, 130, 32,
+ 16, 0, 5, 0, 0, 0,
+ 70, 30, 16, 0, 0, 0,
+ 0, 0, 70, 142, 32, 0,
+ 0, 0, 0, 0, 25, 0,
+ 0, 0, 62, 0, 0, 1,
+ 82, 84, 83, 48, 164, 0,
+ 0, 0, 1, 0, 0, 0,
+ 4, 0, 0, 0, 24, 0,
+ 0, 0, 0, 0, 0, 0,
+ 164, 0, 0, 0, 29, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 72, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 100, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 128, 0,
+ 0, 0, 2, 0, 0, 0,
+ 0, 0, 0, 0, 156, 0,
+ 0, 0, 1, 0, 0, 0,
+ 80, 0, 0, 0, 0, 0,
+ 0, 0, 1, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 255, 255, 255, 255,
+ 1, 0, 0, 0, 108, 0,
+ 0, 0, 0, 0, 0, 0,
+ 1, 0, 0, 0, 1, 0,
+ 0, 0, 0, 0, 0, 0,
+ 255, 255, 255, 255, 1, 0,
+ 0, 0, 136, 0, 0, 0,
+ 3, 0, 0, 0, 1, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 255, 255,
+ 255, 255, 0, 0, 0, 0,
+ 0, 0, 0, 0
+};
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcNoSpec.pdb b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcNoSpec.pdb
new file mode 100644
index 00000000..284ea811
Binary files /dev/null and b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcNoSpec.pdb differ
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcNoSpecBn.inc b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcNoSpecBn.inc
new file mode 100644
index 00000000..04321f07
--- /dev/null
+++ b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcNoSpecBn.inc
@@ -0,0 +1,335 @@
+#if 0
+//
+// Generated by Microsoft (R) D3D Shader Disassembler
+//
+//
+// Input signature:
+//
+// Name Index Mask Register SysValue Format Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// SV_Position 0 xyzw 0 NONE float xyzw
+// NORMAL 0 xyz 1 NONE float xyz
+// TANGENT 0 xyzw 2 NONE float xyz
+// TEXCOORD 0 xy 3 NONE float xy
+// COLOR 0 xyzw 4 NONE float xyzw
+//
+//
+// Output signature:
+//
+// Name Index Mask Register SysValue Format Used
+// -------------------- ----- ------ -------- -------- ------- ------
+// TEXCOORD 0 xy 0 NONE float xy
+// TEXCOORD 1 xyzw 1 NONE float xyzw
+// TEXCOORD 2 xyz 2 NONE float xyz
+// TEXCOORD 3 xyz 3 NONE float xyz
+// COLOR 0 xyzw 4 NONE float xyzw
+// SV_Position 0 xyzw 5 POS float xyzw
+//
+vs_5_0
+dcl_globalFlags refactoringAllowed
+dcl_constantbuffer CB0[26], immediateIndexed
+dcl_input v0.xyzw
+dcl_input v1.xyz
+dcl_input v2.xyz
+dcl_input v3.xy
+dcl_input v4.xyzw
+dcl_output o0.xy
+dcl_output o1.xyzw
+dcl_output o2.xyz
+dcl_output o3.xyz
+dcl_output o4.xyzw
+dcl_output_siv o5.xyzw, position
+dcl_temps 2
+mov o0.xy, v3.xyxx
+dp4 o1.x, v0.xyzw, cb0[15].xyzw
+dp4 o1.y, v0.xyzw, cb0[16].xyzw
+dp4 o1.z, v0.xyzw, cb0[17].xyzw
+dp4_sat o1.w, v0.xyzw, cb0[14].xyzw
+mad r0.xyz, v1.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
+dp3 r1.x, r0.xyzx, cb0[19].xyzx
+dp3 r1.y, r0.xyzx, cb0[20].xyzx
+dp3 r1.z, r0.xyzx, cb0[21].xyzx
+dp3 r0.x, r1.xyzx, r1.xyzx
+rsq r0.x, r0.x
+mul o2.xyz, r0.xxxx, r1.xyzx
+mad r0.xyz, v2.xyzx, l(2.000000, 2.000000, 2.000000, 0.000000), l(-1.000000, -1.000000, -1.000000, 0.000000)
+dp3 r1.x, r0.xyzx, cb0[19].xyzx
+dp3 r1.y, r0.xyzx, cb0[20].xyzx
+dp3 r1.z, r0.xyzx, cb0[21].xyzx
+dp3 r0.x, r1.xyzx, r1.xyzx
+rsq r0.x, r0.x
+mul o3.xyz, r0.xxxx, r1.xyzx
+mul o4.w, v4.w, cb0[0].w
+mov o4.xyz, v4.xyzx
+dp4 o5.x, v0.xyzw, cb0[22].xyzw
+dp4 o5.y, v0.xyzw, cb0[23].xyzw
+dp4 o5.z, v0.xyzw, cb0[24].xyzw
+dp4 o5.w, v0.xyzw, cb0[25].xyzw
+ret
+// Approximately 0 instruction slots used
+#endif
+
+const BYTE NormalMapEffect_VSNormalPixelLightingTxVcNoSpecBn[] =
+{
+ 68, 88, 66, 67, 190, 198,
+ 247, 198, 136, 193, 219, 215,
+ 136, 47, 7, 41, 9, 177,
+ 68, 237, 1, 0, 0, 0,
+ 28, 6, 0, 0, 4, 0,
+ 0, 0, 48, 0, 0, 0,
+ 228, 0, 0, 0, 160, 1,
+ 0, 0, 112, 5, 0, 0,
+ 73, 83, 71, 78, 172, 0,
+ 0, 0, 5, 0, 0, 0,
+ 8, 0, 0, 0, 128, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 0, 0, 0, 0,
+ 15, 15, 0, 0, 140, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 1, 0, 0, 0,
+ 7, 7, 0, 0, 147, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 2, 0, 0, 0,
+ 15, 7, 0, 0, 155, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 3, 0, 0, 0,
+ 3, 3, 0, 0, 164, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 4, 0, 0, 0,
+ 15, 15, 0, 0, 83, 86,
+ 95, 80, 111, 115, 105, 116,
+ 105, 111, 110, 0, 78, 79,
+ 82, 77, 65, 76, 0, 84,
+ 65, 78, 71, 69, 78, 84,
+ 0, 84, 69, 88, 67, 79,
+ 79, 82, 68, 0, 67, 79,
+ 76, 79, 82, 0, 171, 171,
+ 79, 83, 71, 78, 180, 0,
+ 0, 0, 6, 0, 0, 0,
+ 8, 0, 0, 0, 152, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 0, 0, 0, 0,
+ 3, 12, 0, 0, 152, 0,
+ 0, 0, 1, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 1, 0, 0, 0,
+ 15, 0, 0, 0, 152, 0,
+ 0, 0, 2, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 2, 0, 0, 0,
+ 7, 8, 0, 0, 152, 0,
+ 0, 0, 3, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 3, 0, 0, 0,
+ 7, 8, 0, 0, 161, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 3, 0,
+ 0, 0, 4, 0, 0, 0,
+ 15, 0, 0, 0, 167, 0,
+ 0, 0, 0, 0, 0, 0,
+ 1, 0, 0, 0, 3, 0,
+ 0, 0, 5, 0, 0, 0,
+ 15, 0, 0, 0, 84, 69,
+ 88, 67, 79, 79, 82, 68,
+ 0, 67, 79, 76, 79, 82,
+ 0, 83, 86, 95, 80, 111,
+ 115, 105, 116, 105, 111, 110,
+ 0, 171, 83, 72, 69, 88,
+ 200, 3, 0, 0, 80, 0,
+ 1, 0, 242, 0, 0, 0,
+ 106, 8, 0, 1, 89, 0,
+ 0, 4, 70, 142, 32, 0,
+ 0, 0, 0, 0, 26, 0,
+ 0, 0, 95, 0, 0, 3,
+ 242, 16, 16, 0, 0, 0,
+ 0, 0, 95, 0, 0, 3,
+ 114, 16, 16, 0, 1, 0,
+ 0, 0, 95, 0, 0, 3,
+ 114, 16, 16, 0, 2, 0,
+ 0, 0, 95, 0, 0, 3,
+ 50, 16, 16, 0, 3, 0,
+ 0, 0, 95, 0, 0, 3,
+ 242, 16, 16, 0, 4, 0,
+ 0, 0, 101, 0, 0, 3,
+ 50, 32, 16, 0, 0, 0,
+ 0, 0, 101, 0, 0, 3,
+ 242, 32, 16, 0, 1, 0,
+ 0, 0, 101, 0, 0, 3,
+ 114, 32, 16, 0, 2, 0,
+ 0, 0, 101, 0, 0, 3,
+ 114, 32, 16, 0, 3, 0,
+ 0, 0, 101, 0, 0, 3,
+ 242, 32, 16, 0, 4, 0,
+ 0, 0, 103, 0, 0, 4,
+ 242, 32, 16, 0, 5, 0,
+ 0, 0, 1, 0, 0, 0,
+ 104, 0, 0, 2, 2, 0,
+ 0, 0, 54, 0, 0, 5,
+ 50, 32, 16, 0, 0, 0,
+ 0, 0, 70, 16, 16, 0,
+ 3, 0, 0, 0, 17, 0,
+ 0, 8, 18, 32, 16, 0,
+ 1, 0, 0, 0, 70, 30,
+ 16, 0, 0, 0, 0, 0,
+ 70, 142, 32, 0, 0, 0,
+ 0, 0, 15, 0, 0, 0,
+ 17, 0, 0, 8, 34, 32,
+ 16, 0, 1, 0, 0, 0,
+ 70, 30, 16, 0, 0, 0,
+ 0, 0, 70, 142, 32, 0,
+ 0, 0, 0, 0, 16, 0,
+ 0, 0, 17, 0, 0, 8,
+ 66, 32, 16, 0, 1, 0,
+ 0, 0, 70, 30, 16, 0,
+ 0, 0, 0, 0, 70, 142,
+ 32, 0, 0, 0, 0, 0,
+ 17, 0, 0, 0, 17, 32,
+ 0, 8, 130, 32, 16, 0,
+ 1, 0, 0, 0, 70, 30,
+ 16, 0, 0, 0, 0, 0,
+ 70, 142, 32, 0, 0, 0,
+ 0, 0, 14, 0, 0, 0,
+ 50, 0, 0, 15, 114, 0,
+ 16, 0, 0, 0, 0, 0,
+ 70, 18, 16, 0, 1, 0,
+ 0, 0, 2, 64, 0, 0,
+ 0, 0, 0, 64, 0, 0,
+ 0, 64, 0, 0, 0, 64,
+ 0, 0, 0, 0, 2, 64,
+ 0, 0, 0, 0, 128, 191,
+ 0, 0, 128, 191, 0, 0,
+ 128, 191, 0, 0, 0, 0,
+ 16, 0, 0, 8, 18, 0,
+ 16, 0, 1, 0, 0, 0,
+ 70, 2, 16, 0, 0, 0,
+ 0, 0, 70, 130, 32, 0,
+ 0, 0, 0, 0, 19, 0,
+ 0, 0, 16, 0, 0, 8,
+ 34, 0, 16, 0, 1, 0,
+ 0, 0, 70, 2, 16, 0,
+ 0, 0, 0, 0, 70, 130,
+ 32, 0, 0, 0, 0, 0,
+ 20, 0, 0, 0, 16, 0,
+ 0, 8, 66, 0, 16, 0,
+ 1, 0, 0, 0, 70, 2,
+ 16, 0, 0, 0, 0, 0,
+ 70, 130, 32, 0, 0, 0,
+ 0, 0, 21, 0, 0, 0,
+ 16, 0, 0, 7, 18, 0,
+ 16, 0, 0, 0, 0, 0,
+ 70, 2, 16, 0, 1, 0,
+ 0, 0, 70, 2, 16, 0,
+ 1, 0, 0, 0, 68, 0,
+ 0, 5, 18, 0, 16, 0,
+ 0, 0, 0, 0, 10, 0,
+ 16, 0, 0, 0, 0, 0,
+ 56, 0, 0, 7, 114, 32,
+ 16, 0, 2, 0, 0, 0,
+ 6, 0, 16, 0, 0, 0,
+ 0, 0, 70, 2, 16, 0,
+ 1, 0, 0, 0, 50, 0,
+ 0, 15, 114, 0, 16, 0,
+ 0, 0, 0, 0, 70, 18,
+ 16, 0, 2, 0, 0, 0,
+ 2, 64, 0, 0, 0, 0,
+ 0, 64, 0, 0, 0, 64,
+ 0, 0, 0, 64, 0, 0,
+ 0, 0, 2, 64, 0, 0,
+ 0, 0, 128, 191, 0, 0,
+ 128, 191, 0, 0, 128, 191,
+ 0, 0, 0, 0, 16, 0,
+ 0, 8, 18, 0, 16, 0,
+ 1, 0, 0, 0, 70, 2,
+ 16, 0, 0, 0, 0, 0,
+ 70, 130, 32, 0, 0, 0,
+ 0, 0, 19, 0, 0, 0,
+ 16, 0, 0, 8, 34, 0,
+ 16, 0, 1, 0, 0, 0,
+ 70, 2, 16, 0, 0, 0,
+ 0, 0, 70, 130, 32, 0,
+ 0, 0, 0, 0, 20, 0,
+ 0, 0, 16, 0, 0, 8,
+ 66, 0, 16, 0, 1, 0,
+ 0, 0, 70, 2, 16, 0,
+ 0, 0, 0, 0, 70, 130,
+ 32, 0, 0, 0, 0, 0,
+ 21, 0, 0, 0, 16, 0,
+ 0, 7, 18, 0, 16, 0,
+ 0, 0, 0, 0, 70, 2,
+ 16, 0, 1, 0, 0, 0,
+ 70, 2, 16, 0, 1, 0,
+ 0, 0, 68, 0, 0, 5,
+ 18, 0, 16, 0, 0, 0,
+ 0, 0, 10, 0, 16, 0,
+ 0, 0, 0, 0, 56, 0,
+ 0, 7, 114, 32, 16, 0,
+ 3, 0, 0, 0, 6, 0,
+ 16, 0, 0, 0, 0, 0,
+ 70, 2, 16, 0, 1, 0,
+ 0, 0, 56, 0, 0, 8,
+ 130, 32, 16, 0, 4, 0,
+ 0, 0, 58, 16, 16, 0,
+ 4, 0, 0, 0, 58, 128,
+ 32, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 54, 0,
+ 0, 5, 114, 32, 16, 0,
+ 4, 0, 0, 0, 70, 18,
+ 16, 0, 4, 0, 0, 0,
+ 17, 0, 0, 8, 18, 32,
+ 16, 0, 5, 0, 0, 0,
+ 70, 30, 16, 0, 0, 0,
+ 0, 0, 70, 142, 32, 0,
+ 0, 0, 0, 0, 22, 0,
+ 0, 0, 17, 0, 0, 8,
+ 34, 32, 16, 0, 5, 0,
+ 0, 0, 70, 30, 16, 0,
+ 0, 0, 0, 0, 70, 142,
+ 32, 0, 0, 0, 0, 0,
+ 23, 0, 0, 0, 17, 0,
+ 0, 8, 66, 32, 16, 0,
+ 5, 0, 0, 0, 70, 30,
+ 16, 0, 0, 0, 0, 0,
+ 70, 142, 32, 0, 0, 0,
+ 0, 0, 24, 0, 0, 0,
+ 17, 0, 0, 8, 130, 32,
+ 16, 0, 5, 0, 0, 0,
+ 70, 30, 16, 0, 0, 0,
+ 0, 0, 70, 142, 32, 0,
+ 0, 0, 0, 0, 25, 0,
+ 0, 0, 62, 0, 0, 1,
+ 82, 84, 83, 48, 164, 0,
+ 0, 0, 1, 0, 0, 0,
+ 4, 0, 0, 0, 24, 0,
+ 0, 0, 0, 0, 0, 0,
+ 164, 0, 0, 0, 29, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 72, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 100, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 128, 0,
+ 0, 0, 2, 0, 0, 0,
+ 0, 0, 0, 0, 156, 0,
+ 0, 0, 1, 0, 0, 0,
+ 80, 0, 0, 0, 0, 0,
+ 0, 0, 1, 0, 0, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 255, 255, 255, 255,
+ 1, 0, 0, 0, 108, 0,
+ 0, 0, 0, 0, 0, 0,
+ 1, 0, 0, 0, 1, 0,
+ 0, 0, 0, 0, 0, 0,
+ 255, 255, 255, 255, 1, 0,
+ 0, 0, 136, 0, 0, 0,
+ 3, 0, 0, 0, 1, 0,
+ 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 255, 255,
+ 255, 255, 0, 0, 0, 0,
+ 0, 0, 0, 0
+};
diff --git a/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcNoSpecBn.pdb b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcNoSpecBn.pdb
new file mode 100644
index 00000000..732258c2
Binary files /dev/null and b/Src/Shaders/Compiled/NormalMapEffect_VSNormalPixelLightingTxVcNoSpecBn.pdb differ
diff --git a/Src/Shaders/NormalMapEffect.fx b/Src/Shaders/NormalMapEffect.fx
index a9d55a56..eb671ecb 100644
--- a/Src/Shaders/NormalMapEffect.fx
+++ b/Src/Shaders/NormalMapEffect.fx
@@ -10,8 +10,8 @@
Texture2D Texture : register(t0);
-Texture2D SpecularTexture : register(t1);
-Texture2D NormalTexture : register(t2);
+Texture2D NormalTexture : register(t1);
+Texture2D SpecularTexture : register(t2);
sampler Sampler : register(s0);
@@ -60,6 +60,14 @@ VSOutputPixelLightingTxTangent VSNormalPixelLightingTx(VSInputNmTxTangent vin)
return vout;
}
+[RootSignature(NormalMapRSNoSpec)]
+VSOutputPixelLightingTxTangent VSNormalPixelLightingTxNoSpec(VSInputNmTxTangent vin)
+{
+ return VSNormalPixelLightingTx(vin);
+}
+
+
+// Vertex shader: pixel lighting + texture (biased normal).
[RootSignature(NormalMapRS)]
VSOutputPixelLightingTxTangent VSNormalPixelLightingTxBn(VSInputNmTxTangent vin)
{
@@ -81,6 +89,11 @@ VSOutputPixelLightingTxTangent VSNormalPixelLightingTxBn(VSInputNmTxTangent vin)
return vout;
}
+[RootSignature(NormalMapRSNoSpec)]
+VSOutputPixelLightingTxTangent VSNormalPixelLightingTxNoSpecBn(VSInputNmTxTangent vin)
+{
+ return VSNormalPixelLightingTxBn(vin);
+}
// Vertex shader: pixel lighting + texture + vertex color.
[RootSignature(NormalMapRS)]
@@ -101,6 +114,13 @@ VSOutputPixelLightingTxTangent VSNormalPixelLightingTxVc(VSInputNmTxVcTangent vi
return vout;
}
+[RootSignature(NormalMapRSNoSpec)]
+VSOutputPixelLightingTxTangent VSNormalPixelLightingTxVcNoSpec(VSInputNmTxVcTangent vin)
+{
+ return VSNormalPixelLightingTxVc(vin);
+}
+
+// Vertex shader: pixel lighting + texture + vertex color (biased normal).
[RootSignature(NormalMapRS)]
VSOutputPixelLightingTxTangent VSNormalPixelLightingTxVcBn(VSInputNmTxVcTangent vin)
{
@@ -123,6 +143,11 @@ VSOutputPixelLightingTxTangent VSNormalPixelLightingTxVcBn(VSInputNmTxVcTangent
return vout;
}
+[RootSignature(NormalMapRSNoSpec)]
+VSOutputPixelLightingTxTangent VSNormalPixelLightingTxVcNoSpecBn(VSInputNmTxVcTangent vin)
+{
+ return VSNormalPixelLightingTxVcBn(vin);
+}
// Pixel shader: pixel lighting + texture + no fog
[RootSignature(NormalMapRS)]
@@ -175,7 +200,7 @@ float4 PSNormalPixelLightingTx(PSInputPixelLightingTxTangent pin) : SV_Target0
// Pixel shader: pixel lighting + texture + no fog + no specular
-[RootSignature(NormalMapRS)]
+[RootSignature(NormalMapRSNoSpec)]
float4 PSNormalPixelLightingTxNoFogSpec(PSInputPixelLightingTxTangent pin) : SV_Target0
{
float3 eyeVector = normalize(EyePosition - pin.PositionWS.xyz);
@@ -198,7 +223,7 @@ float4 PSNormalPixelLightingTxNoFogSpec(PSInputPixelLightingTxTangent pin) : SV_
}
// Pixel shader: pixel lighting + texture + no specular
-[RootSignature(NormalMapRS)]
+[RootSignature(NormalMapRSNoSpec)]
float4 PSNormalPixelLightingTxNoSpec(PSInputPixelLightingTxTangent pin) : SV_Target0
{
float3 eyeVector = normalize(EyePosition - pin.PositionWS.xyz);
diff --git a/Src/Shaders/RootSig.fxh b/Src/Shaders/RootSig.fxh
index 41cccc8e..05ea3a72 100644
--- a/Src/Shaders/RootSig.fxh
+++ b/Src/Shaders/RootSig.fxh
@@ -42,7 +42,17 @@
" DENY_HULL_SHADER_ROOT_ACCESS )," \
"DescriptorTable ( SRV(t0) )," \
"DescriptorTable ( SRV(t1) )," \
-"DescriptorTable ( SRV(t2) )," \
+"DescriptorTable ( Sampler(s0) )," \
+"CBV(b0)," \
+"DescriptorTable ( SRV(t2) )"
+
+#define NormalMapRSNoSpec \
+"RootFlags ( ALLOW_INPUT_ASSEMBLER_INPUT_LAYOUT |" \
+" DENY_DOMAIN_SHADER_ROOT_ACCESS |" \
+" DENY_GEOMETRY_SHADER_ROOT_ACCESS |" \
+" DENY_HULL_SHADER_ROOT_ACCESS )," \
+"DescriptorTable ( SRV(t0) )," \
+"DescriptorTable ( SRV(t1) )," \
"DescriptorTable ( Sampler(s0) )," \
"CBV(b0)"