From a5732b1ff97b008f1fac49a06b164d0899c83dda Mon Sep 17 00:00:00 2001 From: breki Date: Thu, 29 Oct 2026 10:18:00 +0000 Subject: [PATCH 1/2] Remove scene default from priority dropdown for pp volumes and clamp the output so python cant override it --- .../Children/EveChildLightingOverride.cpp | 2 ++ .../EveChildLightingOverride_Blue.cpp | 2 +- .../Children/EveChildPostProcessVolume.cpp | 4 ++++ .../Tr2PostProcessAttributes_Blue.cpp | 19 ++++++++++++++++++- trinity/PostProcess/Tr2PostProcessEnums.h | 6 ++++++ 5 files changed, 31 insertions(+), 2 deletions(-) diff --git a/trinity/Eve/SpaceObject/Children/EveChildLightingOverride.cpp b/trinity/Eve/SpaceObject/Children/EveChildLightingOverride.cpp index 3283e2fc4..f1b6ccb5d 100644 --- a/trinity/Eve/SpaceObject/Children/EveChildLightingOverride.cpp +++ b/trinity/Eve/SpaceObject/Children/EveChildLightingOverride.cpp @@ -104,6 +104,8 @@ void EveChildLightingOverride::UpdateAsyncronous( const EveUpdateContext& update UpdateTransform( localToWorldTransform ); RebuildBoundingSphere(); + m_overrides.priority = PostProcessEnums::ClampOverridePriority( m_overrides.priority ); + if( m_volumes.empty() ) { m_overrides.intensity = 1.0f; diff --git a/trinity/Eve/SpaceObject/Children/EveChildLightingOverride_Blue.cpp b/trinity/Eve/SpaceObject/Children/EveChildLightingOverride_Blue.cpp index 6c6dbe5f8..8fb6f9f32 100644 --- a/trinity/Eve/SpaceObject/Children/EveChildLightingOverride_Blue.cpp +++ b/trinity/Eve/SpaceObject/Children/EveChildLightingOverride_Blue.cpp @@ -25,7 +25,7 @@ const Be::ClassInfo* EveChildLightingOverride::ExposeToBlue() m_overrides.priority, "Priority of this override. Affects blending between different override objects", Be::READWRITE | Be::PERSIST | Be::ENUM, - PostProcessEnums::Tr2PostProcessPriorityChooser ) + PostProcessEnums::Tr2PostProcessOverridePriorityChooser ) MAP_ATTRIBUTE( "intensity", m_intensity, diff --git a/trinity/Eve/SpaceObject/Children/EveChildPostProcessVolume.cpp b/trinity/Eve/SpaceObject/Children/EveChildPostProcessVolume.cpp index 78148db48..71229c24e 100644 --- a/trinity/Eve/SpaceObject/Children/EveChildPostProcessVolume.cpp +++ b/trinity/Eve/SpaceObject/Children/EveChildPostProcessVolume.cpp @@ -215,5 +215,9 @@ void EveChildPostProcessVolume::RenderDebugInfo( ITr2DebugRenderer2& renderer ) Tr2PostProcessAttributes* EveChildPostProcessVolume::GetPostProcessAttributes() { + if( m_postProcessAttributes ) + { + m_postProcessAttributes->priority = PostProcessEnums::ClampOverridePriority( m_postProcessAttributes->priority ); + } return m_postProcessAttributes; } diff --git a/trinity/PostProcess/Tr2PostProcessAttributes_Blue.cpp b/trinity/PostProcess/Tr2PostProcessAttributes_Blue.cpp index eba483f19..324440fd7 100644 --- a/trinity/PostProcess/Tr2PostProcessAttributes_Blue.cpp +++ b/trinity/PostProcess/Tr2PostProcessAttributes_Blue.cpp @@ -26,6 +26,23 @@ Be::VarChooser Tr2PostProcessPriorityChooser[] = { { 0 } }; BLUE_REGISTER_ENUM_EX( "Tr2PostProcessPriority", Priority, Tr2PostProcessPriorityChooser, ENUM_REG_ENUM_OBJECT_ON_MODULE ); + +Be::VarChooser Tr2PostProcessOverridePriorityChooser[] = { + + { "UI", + BeCast( Priority::UI_PRIORITY ), + "UI (Top) Priority" }, + { "High", + BeCast( Priority::HIGH_PRIORITY ), + "High Priority" }, + { "Medium", + BeCast( Priority::MEDIUM_PRIORITY ), + "Medium Priority" }, + { "Low", + BeCast( Priority::LOW_PRIORITY ), + "Low (lowest override) Priority" }, + { 0 } +}; } @@ -35,7 +52,7 @@ const Be::ClassInfo* Tr2PostProcessAttributes::ExposeToBlue() { EXPOSURE_BEGIN( Tr2PostProcessAttributes, "" ) MAP_INTERFACE( Tr2PostProcessAttributes ) - MAP_ATTRIBUTE_WITH_CHOOSER( "priority", priority, "", Be::READWRITE | Be::PERSIST | Be::ENUM, PostProcessEnums::Tr2PostProcessPriorityChooser ) + MAP_ATTRIBUTE_WITH_CHOOSER( "priority", priority, "", Be::READWRITE | Be::PERSIST | Be::ENUM, PostProcessEnums::Tr2PostProcessOverridePriorityChooser ) MAP_ATTRIBUTE( "intensity", intensity, "", Be::READ ) #define POSTPROCESSATTRIBUTE_DEFINE( NAME, GROUP, DESC ) \ diff --git a/trinity/PostProcess/Tr2PostProcessEnums.h b/trinity/PostProcess/Tr2PostProcessEnums.h index dab504678..e72fb0471 100644 --- a/trinity/PostProcess/Tr2PostProcessEnums.h +++ b/trinity/PostProcess/Tr2PostProcessEnums.h @@ -65,5 +65,11 @@ enum Priority PRIORITY_COUNT }; extern Be::VarChooser Tr2PostProcessPriorityChooser[]; +extern Be::VarChooser Tr2PostProcessOverridePriorityChooser[]; + +inline Priority ClampOverridePriority( Priority priority ) +{ + return priority < LOW_PRIORITY ? LOW_PRIORITY : ( priority > UI_PRIORITY ? UI_PRIORITY : priority ); +} }; \ No newline at end of file From eaa022fa98d1ab8fa18facd90199e7bf019ef099 Mon Sep 17 00:00:00 2001 From: breki Date: Thu, 29 Oct 2026 13:56:57 +0000 Subject: [PATCH 2/2] removed clamp and simplify PP priority by removing option to use scene default --- .../Children/EveChildLightingOverride.cpp | 2 -- .../EveChildLightingOverride_Blue.cpp | 2 +- .../Children/EveChildPostProcessVolume.cpp | 4 ---- .../Tr2PostProcessAttributes_Blue.cpp | 24 ++----------------- trinity/PostProcess/Tr2PostProcessEnums.h | 6 ----- 5 files changed, 3 insertions(+), 35 deletions(-) diff --git a/trinity/Eve/SpaceObject/Children/EveChildLightingOverride.cpp b/trinity/Eve/SpaceObject/Children/EveChildLightingOverride.cpp index f1b6ccb5d..3283e2fc4 100644 --- a/trinity/Eve/SpaceObject/Children/EveChildLightingOverride.cpp +++ b/trinity/Eve/SpaceObject/Children/EveChildLightingOverride.cpp @@ -104,8 +104,6 @@ void EveChildLightingOverride::UpdateAsyncronous( const EveUpdateContext& update UpdateTransform( localToWorldTransform ); RebuildBoundingSphere(); - m_overrides.priority = PostProcessEnums::ClampOverridePriority( m_overrides.priority ); - if( m_volumes.empty() ) { m_overrides.intensity = 1.0f; diff --git a/trinity/Eve/SpaceObject/Children/EveChildLightingOverride_Blue.cpp b/trinity/Eve/SpaceObject/Children/EveChildLightingOverride_Blue.cpp index 8fb6f9f32..6c6dbe5f8 100644 --- a/trinity/Eve/SpaceObject/Children/EveChildLightingOverride_Blue.cpp +++ b/trinity/Eve/SpaceObject/Children/EveChildLightingOverride_Blue.cpp @@ -25,7 +25,7 @@ const Be::ClassInfo* EveChildLightingOverride::ExposeToBlue() m_overrides.priority, "Priority of this override. Affects blending between different override objects", Be::READWRITE | Be::PERSIST | Be::ENUM, - PostProcessEnums::Tr2PostProcessOverridePriorityChooser ) + PostProcessEnums::Tr2PostProcessPriorityChooser ) MAP_ATTRIBUTE( "intensity", m_intensity, diff --git a/trinity/Eve/SpaceObject/Children/EveChildPostProcessVolume.cpp b/trinity/Eve/SpaceObject/Children/EveChildPostProcessVolume.cpp index 71229c24e..78148db48 100644 --- a/trinity/Eve/SpaceObject/Children/EveChildPostProcessVolume.cpp +++ b/trinity/Eve/SpaceObject/Children/EveChildPostProcessVolume.cpp @@ -215,9 +215,5 @@ void EveChildPostProcessVolume::RenderDebugInfo( ITr2DebugRenderer2& renderer ) Tr2PostProcessAttributes* EveChildPostProcessVolume::GetPostProcessAttributes() { - if( m_postProcessAttributes ) - { - m_postProcessAttributes->priority = PostProcessEnums::ClampOverridePriority( m_postProcessAttributes->priority ); - } return m_postProcessAttributes; } diff --git a/trinity/PostProcess/Tr2PostProcessAttributes_Blue.cpp b/trinity/PostProcess/Tr2PostProcessAttributes_Blue.cpp index 324440fd7..793b051d0 100644 --- a/trinity/PostProcess/Tr2PostProcessAttributes_Blue.cpp +++ b/trinity/PostProcess/Tr2PostProcessAttributes_Blue.cpp @@ -8,27 +8,6 @@ namespace PostProcessEnums { Be::VarChooser Tr2PostProcessPriorityChooser[] = { - { "UI", - BeCast( Priority::UI_PRIORITY ), - "UI (Top) Priority" }, - { "High", - BeCast( Priority::HIGH_PRIORITY ), - "High Priority" }, - { "Medium", - BeCast( Priority::MEDIUM_PRIORITY ), - "Medium Priority" }, - { "Low", - BeCast( Priority::LOW_PRIORITY ), - "Low Priority" }, - { "SceneDefault", - BeCast( Priority::SCENE_DEFAULT_PRIORITY ), - "Scene Default (lowest) Priority" }, - { 0 } -}; -BLUE_REGISTER_ENUM_EX( "Tr2PostProcessPriority", Priority, Tr2PostProcessPriorityChooser, ENUM_REG_ENUM_OBJECT_ON_MODULE ); - -Be::VarChooser Tr2PostProcessOverridePriorityChooser[] = { - { "UI", BeCast( Priority::UI_PRIORITY ), "UI (Top) Priority" }, @@ -43,6 +22,7 @@ Be::VarChooser Tr2PostProcessOverridePriorityChooser[] = { "Low (lowest override) Priority" }, { 0 } }; +BLUE_REGISTER_ENUM_EX( "Tr2PostProcessPriority", Priority, Tr2PostProcessPriorityChooser, ENUM_REG_ENUM_OBJECT_ON_MODULE ); } @@ -52,7 +32,7 @@ const Be::ClassInfo* Tr2PostProcessAttributes::ExposeToBlue() { EXPOSURE_BEGIN( Tr2PostProcessAttributes, "" ) MAP_INTERFACE( Tr2PostProcessAttributes ) - MAP_ATTRIBUTE_WITH_CHOOSER( "priority", priority, "", Be::READWRITE | Be::PERSIST | Be::ENUM, PostProcessEnums::Tr2PostProcessOverridePriorityChooser ) + MAP_ATTRIBUTE_WITH_CHOOSER( "priority", priority, "", Be::READWRITE | Be::PERSIST | Be::ENUM, PostProcessEnums::Tr2PostProcessPriorityChooser ) MAP_ATTRIBUTE( "intensity", intensity, "", Be::READ ) #define POSTPROCESSATTRIBUTE_DEFINE( NAME, GROUP, DESC ) \ diff --git a/trinity/PostProcess/Tr2PostProcessEnums.h b/trinity/PostProcess/Tr2PostProcessEnums.h index e72fb0471..dab504678 100644 --- a/trinity/PostProcess/Tr2PostProcessEnums.h +++ b/trinity/PostProcess/Tr2PostProcessEnums.h @@ -65,11 +65,5 @@ enum Priority PRIORITY_COUNT }; extern Be::VarChooser Tr2PostProcessPriorityChooser[]; -extern Be::VarChooser Tr2PostProcessOverridePriorityChooser[]; - -inline Priority ClampOverridePriority( Priority priority ) -{ - return priority < LOW_PRIORITY ? LOW_PRIORITY : ( priority > UI_PRIORITY ? UI_PRIORITY : priority ); -} }; \ No newline at end of file