From 7652feabfadbbda3f0b41b4a6c9f8e2edd72b4a4 Mon Sep 17 00:00:00 2001 From: Chandler Cox Date: Fri, 15 Mar 2024 15:15:40 -0500 Subject: [PATCH] Clamp location of multiblend data. --- Source/Editor/Surface/Archetypes/Animation.MultiBlend.cs | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Source/Editor/Surface/Archetypes/Animation.MultiBlend.cs b/Source/Editor/Surface/Archetypes/Animation.MultiBlend.cs index 2747e1023..1178f54de 100644 --- a/Source/Editor/Surface/Archetypes/Animation.MultiBlend.cs +++ b/Source/Editor/Surface/Archetypes/Animation.MultiBlend.cs @@ -617,8 +617,9 @@ namespace FlaxEditor.Surface.Archetypes public override void SetLocation(int index, Float2 location) { var dataA = (Float4)_node.Values[4 + index * 2]; + var ranges = (Float4)_node.Values[0]; - dataA.X = location.X; + dataA.X = Mathf.Clamp(location.X, ranges.X, ranges.Y); _node.Values[4 + index * 2] = dataA; _node.Surface.MarkAsEdited(); @@ -750,9 +751,10 @@ namespace FlaxEditor.Surface.Archetypes public override void SetLocation(int index, Float2 location) { var dataA = (Float4)_node.Values[4 + index * 2]; + var ranges = (Float4)_node.Values[0]; - dataA.X = location.X; - dataA.Y = location.Y; + dataA.X = Mathf.Clamp(location.X, ranges.X, ranges.Y); + dataA.Y = Mathf.Clamp(location.Y, ranges.Z, ranges.W); _node.Values[4 + index * 2] = dataA; _node.Surface.MarkAsEdited();