From e8109afd0fe92eb04336a051849a59e6404de664 Mon Sep 17 00:00:00 2001 From: amylizzle Date: Wed, 6 Sep 2023 11:56:41 +0100 Subject: [PATCH] Fix plane master render target handling --- OpenDreamClient/Rendering/DreamViewOverlay.cs | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/OpenDreamClient/Rendering/DreamViewOverlay.cs b/OpenDreamClient/Rendering/DreamViewOverlay.cs index 8e0adf4bdb..ffabda94fb 100644 --- a/OpenDreamClient/Rendering/DreamViewOverlay.cs +++ b/OpenDreamClient/Rendering/DreamViewOverlay.cs @@ -253,6 +253,15 @@ private void ProcessIconComponents(DreamIcon icon, Vector2 position, EntityUid u renderTargetPlaceholder.Layer = current.Layer; renderTargetPlaceholder.RenderSource = current.RenderTarget; renderTargetPlaceholder.MouseOpacity = current.MouseOpacity; + if((current.AppearanceFlags & AppearanceFlags.PlaneMaster) != 0){ //Plane masters with render targets get special handling + renderTargetPlaceholder.TransformToApply = current.TransformToApply; + renderTargetPlaceholder.ColorToApply = current.ColorToApply; + renderTargetPlaceholder.ColorMatrixToApply = current.ColorMatrixToApply; + renderTargetPlaceholder.AlphaToApply = current.AlphaToApply; + renderTargetPlaceholder.BlendMode = current.BlendMode; + } + renderTargetPlaceholder.AppearanceFlags = current.AppearanceFlags; + current.AppearanceFlags = current.AppearanceFlags & ~AppearanceFlags.PlaneMaster; //only the placeholder should be marked as master result.Add(renderTargetPlaceholder); }