diff options
| author | yum <yum.food.vr@gmail.com> | 2025-02-19 01:38:22 -0800 |
|---|---|---|
| committer | yum <yum.food.vr@gmail.com> | 2025-02-19 01:38:22 -0800 |
| commit | 6b5018777d9cc7c362fafa3c673659770a6a5bca (patch) | |
| tree | 4eba6af561ad50e4dc71f1b3bf3ee7de6de1c773 | |
| parent | adbda7c2100785942235251ac5e49fe8900a503e (diff) | |
Add defaultValue to toggleSpec
| -rw-r--r-- | YOTSCore.cs | 28 |
1 files changed, 21 insertions, 7 deletions
diff --git a/YOTSCore.cs b/YOTSCore.cs index c5b46fc..4e0e6ee 100644 --- a/YOTSCore.cs +++ b/YOTSCore.cs @@ -30,6 +30,9 @@ namespace YOTS [SerializeField]
public string menuPath = "/";
+ [SerializeField]
+ public float defaultValue = 1.0f;
+
public ToggleSpec(string name)
{
this.name = name;
@@ -123,7 +126,7 @@ namespace YOTS [System.Serializable]
public class GeneratedAnimatorConfig
{
- public List<string> parameters = new List<string>();
+ public List<AnimatorParameterSetting> parameters = new List<AnimatorParameterSetting>();
public List<AnimatorLayer> layers = new List<AnimatorLayer>();
public List<GeneratedAnimationClipConfig> animations =
new List<GeneratedAnimationClipConfig>();
@@ -167,6 +170,13 @@ namespace YOTS public Texture2D icon;
}
+ [System.Serializable]
+ public class AnimatorParameterSetting
+ {
+ public string name;
+ public float defaultValue;
+ }
+
public class YOTSCore
{
public static AnimatorController GenerateAnimator(
@@ -290,9 +300,9 @@ namespace YOTS foreach (var param in animatorConfig.parameters)
{
var p = new AnimatorControllerParameter();
- p.name = param;
+ p.name = param.name;
p.type = AnimatorControllerParameterType.Float;
- p.defaultFloat = 0.0f; // TODO set this according to user's preference
+ p.defaultFloat = param.defaultValue;
parameters_list.Add(p);
}
controller.parameters = parameters_list.ToArray();
@@ -490,13 +500,17 @@ namespace YOTS {
var depthGroup = togglesByDepth[i];
AnimatorLayer layer = new AnimatorLayer();
- layer.name = i == 0 ? "BaseLayer" : $"OverrideLayer{(i-1).ToString("00")}";
+ layer.name = i == 0 ? "BaseLayer" : $"OverrideLayer{(i - 1).ToString("00")}";
foreach (var toggle in depthGroup)
{
string paramName = toggle.name;
- if (!genAnimatorConfig.parameters.Contains(paramName))
- genAnimatorConfig.parameters.Add(paramName);
+ if (!genAnimatorConfig.parameters.Any(p => p.name == paramName))
+ genAnimatorConfig.parameters.Add(new AnimatorParameterSetting
+ {
+ name = paramName,
+ defaultValue = toggle.defaultValue
+ });
layer.directBlendTree.entries.Add(new AnimatorDirectBlendTreeEntry {
name = toggle.name + "_On",
@@ -955,7 +969,7 @@ namespace YOTS {
name = toggle.name,
valueType = toggle.type == "radial" ? VRCExpressionParameters.ValueType.Float : VRCExpressionParameters.ValueType.Bool,
- defaultValue = 1f,
+ defaultValue = toggle.defaultValue,
saved = true
});
}
|
