@@ -72,9 +72,6 @@ void ScreenSpaceAmbientOcclusion::PrepareResources(IRenderDevice* pDevice, IDevi
7272 const bool UseReverseDepth = (PostFXFeatureFlags & PostFXContext::FEATURE_FLAG_REVERSED_DEPTH) != 0 ;
7373 if (m_FeatureFlags != FeatureFlags || m_UseReverseDepth != UseReverseDepth)
7474 {
75- for (auto & Iter : m_RenderTech)
76- Iter.second .SRB .Release ();
77-
7875 if ((m_FeatureFlags & (FEATURE_FLAG_HALF_PRECISION_DEPTH | FEATURE_FLAG_HALF_RESOLUTION)) !=
7976 (FeatureFlags & (FEATURE_FLAG_HALF_PRECISION_DEPTH | FEATURE_FLAG_HALF_RESOLUTION)))
8077 {
@@ -89,6 +86,9 @@ void ScreenSpaceAmbientOcclusion::PrepareResources(IRenderDevice* pDevice, IDevi
8986 if (m_BackBufferWidth == FrameDesc.Width && m_BackBufferHeight == FrameDesc.Height )
9087 return ;
9188
89+ for (auto & Iter : m_RenderTech)
90+ Iter.second .SRB .Release ();
91+
9292 m_BackBufferWidth = FrameDesc.Width ;
9393 m_BackBufferHeight = FrameDesc.Height ;
9494
@@ -388,9 +388,9 @@ bool ScreenSpaceAmbientOcclusion::UpdateUI(HLSL::ScreenSpaceAmbientOcclusionAttr
388388{
389389 const char * AlgorithmTypeNames[] = {" GTAO" , " HBAO" };
390390
391- Int32 AlgorithmType = FeatureFlags & FEATURE_FLAG_UNIFORM_WEIGHTING;
392- bool FeatureHalfResolution = FeatureFlags & FEATURE_FLAG_HALF_RESOLUTION;
393- bool FeatureHalfPrecisionDepth = FeatureFlags & FEATURE_FLAG_HALF_PRECISION_DEPTH;
391+ int AlgorithmType = ( FeatureFlags & FEATURE_FLAG_UNIFORM_WEIGHTING) != 0 ? 1 : 0 ;
392+ bool FeatureHalfResolution = ( FeatureFlags & FEATURE_FLAG_HALF_RESOLUTION) != 0 ;
393+ bool FeatureHalfPrecisionDepth = ( FeatureFlags & FEATURE_FLAG_HALF_PRECISION_DEPTH) != 0 ;
394394
395395 bool AttribsChanged = false ;
396396
@@ -438,7 +438,7 @@ bool ScreenSpaceAmbientOcclusion::UpdateUI(HLSL::ScreenSpaceAmbientOcclusionAttr
438438 FeatureFlags &= ~Flag;
439439 };
440440
441- ResetStateFeatureMask (FeatureFlags, FEATURE_FLAG_UNIFORM_WEIGHTING, static_cast < bool >( AlgorithmType) );
441+ ResetStateFeatureMask (FeatureFlags, FEATURE_FLAG_UNIFORM_WEIGHTING, AlgorithmType == 1 );
442442 ResetStateFeatureMask (FeatureFlags, FEATURE_FLAG_HALF_RESOLUTION, FeatureHalfResolution);
443443 ResetStateFeatureMask (FeatureFlags, FEATURE_FLAG_HALF_PRECISION_DEPTH, FeatureHalfPrecisionDepth);
444444
0 commit comments