From 5b47fab89f7f58edcbf190f87364ff2c25472bf5 Mon Sep 17 00:00:00 2001 From: ousttrue Date: Tue, 16 Jul 2024 18:51:20 +0900 Subject: [PATCH] SpringBonePaused to IsSpringBoneEnabled. invert boolean --- .../Runtime/Components/Vrm10Runtime/Vrm10Runtime.cs | 6 +++--- .../Blittables/BlittableExternalData.cs | 6 +++++- .../FastSpringBone/System/UpdateFastSpringBoneJob.cs | 12 ++++++------ Assets/VRM10_Samples/VRM10Viewer/VRM10ViewerUI.cs | 6 +++--- 4 files changed, 17 insertions(+), 13 deletions(-) diff --git a/Assets/VRM10/Runtime/Components/Vrm10Runtime/Vrm10Runtime.cs b/Assets/VRM10/Runtime/Components/Vrm10Runtime/Vrm10Runtime.cs index b38dd7204..e9a80c716 100644 --- a/Assets/VRM10/Runtime/Components/Vrm10Runtime/Vrm10Runtime.cs +++ b/Assets/VRM10/Runtime/Components/Vrm10Runtime/Vrm10Runtime.cs @@ -51,12 +51,12 @@ namespace UniVRM10 } } - public bool SpringBonePaused + public bool IsSpringBoneEnabled { - get => m_externalData.Paused; + get => m_externalData.IsSpringBoneEnabled; set { - m_externalData.Paused = value; + m_externalData.IsSpringBoneEnabled = value; m_fastSpringBoneBuffer.ExternalData = m_externalData; } } diff --git a/Assets/VRM10/Runtime/FastSpringBone/Blittables/BlittableExternalData.cs b/Assets/VRM10/Runtime/FastSpringBone/Blittables/BlittableExternalData.cs index 637cad71a..d79789c5f 100644 --- a/Assets/VRM10/Runtime/FastSpringBone/Blittables/BlittableExternalData.cs +++ b/Assets/VRM10/Runtime/FastSpringBone/Blittables/BlittableExternalData.cs @@ -8,6 +8,10 @@ namespace UniVRM10.FastSpringBones.Blittables public struct BlittableExternalData { public Vector3 ExternalForce; - public bool Paused; + + /// + /// if false, spring bone is paused. + /// + public bool IsSpringBoneEnabled; } } \ No newline at end of file diff --git a/Assets/VRM10/Runtime/FastSpringBone/System/UpdateFastSpringBoneJob.cs b/Assets/VRM10/Runtime/FastSpringBone/System/UpdateFastSpringBoneJob.cs index b71ec5d67..cc0694514 100644 --- a/Assets/VRM10/Runtime/FastSpringBone/System/UpdateFastSpringBoneJob.cs +++ b/Assets/VRM10/Runtime/FastSpringBone/System/UpdateFastSpringBoneJob.cs @@ -147,16 +147,16 @@ namespace UniVRM10.FastSpringBones.System headTransform.localRotation = headTransform.rotation; } - if (spring.ExternalData->Paused) - { - // SpringBone の結果を Transform に反映しないが logic の更新は継続する。 - // 再開したときに暴れない。 - } - else + if (spring.ExternalData->IsSpringBoneEnabled) { // SpringBone の結果を Transform に反映する Transforms[logic.headTransformIndex + transformIndexOffset] = headTransform; } + else + { + // SpringBone の結果を Transform に反映しないが logic の更新は継続する。 + // 再開したときに暴れない。 + } Logics[logicIndex] = logic; } } diff --git a/Assets/VRM10_Samples/VRM10Viewer/VRM10ViewerUI.cs b/Assets/VRM10_Samples/VRM10Viewer/VRM10ViewerUI.cs index 8f15e0fcf..b73892561 100644 --- a/Assets/VRM10_Samples/VRM10Viewer/VRM10ViewerUI.cs +++ b/Assets/VRM10_Samples/VRM10Viewer/VRM10ViewerUI.cs @@ -28,7 +28,7 @@ namespace UniVRM10.VRM10Viewer Toggle m_showBoxMan = default; [SerializeField] - Toggle m_puaseSpringBone = default; + Toggle m_pauseSpringBone = default; [SerializeField] Toggle m_enableLipSync = default; @@ -262,7 +262,7 @@ namespace UniVRM10.VRM10Viewer var toggles = GameObject.FindObjectsOfType(); #endif m_showBoxMan = toggles.First(x => x.name == "ShowBoxMan"); - m_puaseSpringBone = toggles.First(x => x.name == "PauseSpringBone"); + m_pauseSpringBone = toggles.First(x => x.name == "PauseSpringBone"); m_enableLipSync = toggles.First(x => x.name == "EnableLipSync"); m_enableAutoBlink = toggles.First(x => x.name == "EnableAutoBlink"); m_enableAutoExpression = toggles.First(x => x.name == "EnableAutoExpression"); @@ -410,7 +410,7 @@ namespace UniVRM10.VRM10Viewer m_loaded.Runtime.VrmAnimation = Motion; } - m_loaded.Runtime.SpringBonePaused = m_puaseSpringBone.isOn; + m_loaded.Runtime.IsSpringBoneEnabled = !m_pauseSpringBone.isOn; } } }