From d963abcfed0734d3717b92d6d5b0688036d74468 Mon Sep 17 00:00:00 2001 From: Narazaka Date: Sun, 17 Mar 2024 23:55:19 +0900 Subject: [PATCH] ParameterProvider.SubParameters() --- .../IParameterProvider.cs | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/Editor/VRChat/ParameterIntrospection/IParameterProvider.cs b/Editor/VRChat/ParameterIntrospection/IParameterProvider.cs index f5df7e0..5d496fa 100644 --- a/Editor/VRChat/ParameterIntrospection/IParameterProvider.cs +++ b/Editor/VRChat/ParameterIntrospection/IParameterProvider.cs @@ -187,6 +187,22 @@ public bool IsAnimatorOnly /// public bool WantSynced { get; set; } + public IEnumerable SubParameters() + { + if (Namespace == ParameterNamespace.Animator) + { + return new ProvidedParameter[] { this }; + } + return new ProvidedParameter[] + { + new ProvidedParameter(OriginalName + "_IsGrabbed", ParameterNamespace.Animator, Source, Plugin, AnimatorControllerParameterType.Bool) { IsHidden = IsHidden, WantSynced = WantSynced }, + new ProvidedParameter(OriginalName + "_IsPosed", ParameterNamespace.Animator, Source, Plugin, AnimatorControllerParameterType.Bool) { IsHidden = IsHidden, WantSynced = WantSynced }, + new ProvidedParameter(OriginalName + "_Angle", ParameterNamespace.Animator, Source, Plugin, AnimatorControllerParameterType.Float) { IsHidden = IsHidden, WantSynced = WantSynced }, + new ProvidedParameter(OriginalName + "_Stretch", ParameterNamespace.Animator, Source, Plugin, AnimatorControllerParameterType.Float) { IsHidden = IsHidden, WantSynced = WantSynced }, + new ProvidedParameter(OriginalName + "_Squish", ParameterNamespace.Animator, Source, Plugin, AnimatorControllerParameterType.Float) { IsHidden = IsHidden, WantSynced = WantSynced }, + }; + } + public ProvidedParameter Clone() { return (ProvidedParameter)MemberwiseClone(); @@ -259,4 +275,4 @@ public interface IParameterProvider ; #endif } -} \ No newline at end of file +}