From ea29f5203dad7cce71c640951239e7ff491c7f73 Mon Sep 17 00:00:00 2001 From: Azaezel Date: Mon, 23 Feb 2015 15:35:10 -0600 Subject: [PATCH 1/3] DeferredBumpFeat order of operations corrections --- .../glsl/advancedLightingFeaturesGLSL.cpp | 37 +++++++++---------- .../hlsl/advancedLightingFeaturesHLSL.cpp | 13 +++---- 2 files changed, 24 insertions(+), 26 deletions(-) diff --git a/Engine/source/lighting/advanced/glsl/advancedLightingFeaturesGLSL.cpp b/Engine/source/lighting/advanced/glsl/advancedLightingFeaturesGLSL.cpp index d1655ae60..df04ad4d6 100644 --- a/Engine/source/lighting/advanced/glsl/advancedLightingFeaturesGLSL.cpp +++ b/Engine/source/lighting/advanced/glsl/advancedLightingFeaturesGLSL.cpp @@ -216,40 +216,39 @@ void DeferredRTLightingFeatGLSL::setTexData( Material::StageData &stageDat, void DeferredBumpFeatGLSL::processVert( Vector &componentList, const MaterialFeatureData &fd ) { - if( fd.features[MFT_PrePassConditioner] ) + if (fd.features[MFT_PrePassConditioner]) { // There is an output conditioner active, so we need to supply a transform // to the pixel shader. MultiLine *meta = new MultiLine; // We need the view to tangent space transform in the pixel shader. - getOutViewToTangent( componentList, meta, fd ); + getOutViewToTangent(componentList, meta, fd); + const bool useTexAnim = fd.features[MFT_TexAnim]; // Make sure there are texcoords - if( !fd.features[MFT_Parallax] && !fd.features[MFT_DiffuseMap] ) + if (!fd.features[MFT_Parallax] && !fd.features[MFT_DiffuseMap]) { - const bool useTexAnim = fd.features[MFT_TexAnim]; - getOutTexCoord( "texCoord", - "vec2", - true, - useTexAnim, - meta, - componentList ); - - if ( fd.features.hasFeature( MFT_DetailNormalMap ) ) - addOutDetailTexCoord( componentList, - meta, - useTexAnim ); + getOutTexCoord("texCoord", + "float2", + true, + useTexAnim, + meta, + componentList); } + if (fd.features.hasFeature(MFT_DetailNormalMap)) + addOutDetailTexCoord(componentList, + meta, + useTexAnim); output = meta; } - else if ( fd.materialFeatures[MFT_NormalsOut] || - fd.features[MFT_ForwardShading] || - !fd.features[MFT_RTLighting] ) + else if (fd.materialFeatures[MFT_NormalsOut] || + fd.features[MFT_ForwardShading] || + !fd.features[MFT_RTLighting]) { - Parent::processVert( componentList, fd ); + Parent::processVert(componentList, fd); return; } else diff --git a/Engine/source/lighting/advanced/hlsl/advancedLightingFeaturesHLSL.cpp b/Engine/source/lighting/advanced/hlsl/advancedLightingFeaturesHLSL.cpp index 6a646a71e..c6371caf2 100644 --- a/Engine/source/lighting/advanced/hlsl/advancedLightingFeaturesHLSL.cpp +++ b/Engine/source/lighting/advanced/hlsl/advancedLightingFeaturesHLSL.cpp @@ -224,11 +224,11 @@ void DeferredBumpFeatHLSL::processVert( Vector &componentLis // We need the view to tangent space transform in the pixel shader. getOutViewToTangent( componentList, meta, fd ); - + + const bool useTexAnim = fd.features[MFT_TexAnim]; // Make sure there are texcoords if( !fd.features[MFT_Parallax] && !fd.features[MFT_DiffuseMap] ) { - const bool useTexAnim = fd.features[MFT_TexAnim]; getOutTexCoord( "texCoord", "float2", @@ -236,12 +236,11 @@ void DeferredBumpFeatHLSL::processVert( Vector &componentLis useTexAnim, meta, componentList ); - - if ( fd.features.hasFeature( MFT_DetailNormalMap ) ) - addOutDetailTexCoord( componentList, - meta, - useTexAnim ); } + if ( fd.features.hasFeature( MFT_DetailNormalMap ) ) + addOutDetailTexCoord( componentList, + meta, + useTexAnim ); output = meta; } From 0325aaf5bba83a71d150e17df11191b408b65f09 Mon Sep 17 00:00:00 2001 From: Azaezel Date: Wed, 25 Feb 2015 12:50:00 -0600 Subject: [PATCH 2/3] good catch --- .../lighting/advanced/glsl/advancedLightingFeaturesGLSL.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Engine/source/lighting/advanced/glsl/advancedLightingFeaturesGLSL.cpp b/Engine/source/lighting/advanced/glsl/advancedLightingFeaturesGLSL.cpp index df04ad4d6..fc8efa447 100644 --- a/Engine/source/lighting/advanced/glsl/advancedLightingFeaturesGLSL.cpp +++ b/Engine/source/lighting/advanced/glsl/advancedLightingFeaturesGLSL.cpp @@ -231,7 +231,7 @@ void DeferredBumpFeatGLSL::processVert( Vector &componentLis { getOutTexCoord("texCoord", - "float2", + "vec2", true, useTexAnim, meta, From ae3128b28b0a5f1ee8e7bbf027109c2a41f8a147 Mon Sep 17 00:00:00 2001 From: LuisAntonRebollo Date: Sun, 8 Mar 2015 22:30:03 +0100 Subject: [PATCH 3/3] DeferredBumpFeat order of operations corrections. Clean. --- .../glsl/advancedLightingFeaturesGLSL.cpp | 35 ++++++++++--------- .../hlsl/advancedLightingFeaturesHLSL.cpp | 9 ++--- 2 files changed, 23 insertions(+), 21 deletions(-) diff --git a/Engine/source/lighting/advanced/glsl/advancedLightingFeaturesGLSL.cpp b/Engine/source/lighting/advanced/glsl/advancedLightingFeaturesGLSL.cpp index fc8efa447..ce90bcc39 100644 --- a/Engine/source/lighting/advanced/glsl/advancedLightingFeaturesGLSL.cpp +++ b/Engine/source/lighting/advanced/glsl/advancedLightingFeaturesGLSL.cpp @@ -216,39 +216,40 @@ void DeferredRTLightingFeatGLSL::setTexData( Material::StageData &stageDat, void DeferredBumpFeatGLSL::processVert( Vector &componentList, const MaterialFeatureData &fd ) { - if (fd.features[MFT_PrePassConditioner]) + if( fd.features[MFT_PrePassConditioner] ) { // There is an output conditioner active, so we need to supply a transform // to the pixel shader. MultiLine *meta = new MultiLine; // We need the view to tangent space transform in the pixel shader. - getOutViewToTangent(componentList, meta, fd); + getOutViewToTangent( componentList, meta, fd ); const bool useTexAnim = fd.features[MFT_TexAnim]; // Make sure there are texcoords - if (!fd.features[MFT_Parallax] && !fd.features[MFT_DiffuseMap]) + if( !fd.features[MFT_Parallax] && !fd.features[MFT_DiffuseMap] ) { - getOutTexCoord("texCoord", - "vec2", - true, - useTexAnim, - meta, - componentList); + getOutTexCoord( "texCoord", + "vec2", + true, + useTexAnim, + meta, + componentList ); } - if (fd.features.hasFeature(MFT_DetailNormalMap)) - addOutDetailTexCoord(componentList, - meta, - useTexAnim); + + if ( fd.features.hasFeature( MFT_DetailNormalMap ) ) + addOutDetailTexCoord( componentList, + meta, + useTexAnim ); output = meta; } - else if (fd.materialFeatures[MFT_NormalsOut] || - fd.features[MFT_ForwardShading] || - !fd.features[MFT_RTLighting]) + else if ( fd.materialFeatures[MFT_NormalsOut] || + fd.features[MFT_ForwardShading] || + !fd.features[MFT_RTLighting] ) { - Parent::processVert(componentList, fd); + Parent::processVert( componentList, fd ); return; } else diff --git a/Engine/source/lighting/advanced/hlsl/advancedLightingFeaturesHLSL.cpp b/Engine/source/lighting/advanced/hlsl/advancedLightingFeaturesHLSL.cpp index c6371caf2..deda7cbae 100644 --- a/Engine/source/lighting/advanced/hlsl/advancedLightingFeaturesHLSL.cpp +++ b/Engine/source/lighting/advanced/hlsl/advancedLightingFeaturesHLSL.cpp @@ -224,7 +224,7 @@ void DeferredBumpFeatHLSL::processVert( Vector &componentLis // We need the view to tangent space transform in the pixel shader. getOutViewToTangent( componentList, meta, fd ); - + const bool useTexAnim = fd.features[MFT_TexAnim]; // Make sure there are texcoords if( !fd.features[MFT_Parallax] && !fd.features[MFT_DiffuseMap] ) @@ -237,10 +237,11 @@ void DeferredBumpFeatHLSL::processVert( Vector &componentLis meta, componentList ); } + if ( fd.features.hasFeature( MFT_DetailNormalMap ) ) - addOutDetailTexCoord( componentList, - meta, - useTexAnim ); + addOutDetailTexCoord( componentList, + meta, + useTexAnim ); output = meta; }