39 lines
751 B
C#
Raw Normal View History

2025-09-24 11:24:38 +05:00
namespace Fusion.Addons.AnimationController
{
using System;
using UnityEngine;
using UnityEngine.Animations;
using UnityEngine.Playables;
[Serializable]
public sealed class BlendTreeNode
{
// PUBLIC MEMBERS
public AnimationClip Clip;
[NonSerialized]
public AnimationClipPlayable PlayableClip;
public float Speed = 1.0f;
public Vector2 Position;
public float Length => Clip.length;
// PUBLIC METHODS
public void CreatePlayable(PlayableGraph graph)
{
PlayableClip = AnimationClipPlayable.Create(graph, Clip);
}
public void DestroyPlayable()
{
if (PlayableClip.IsValid() == true)
{
PlayableClip.Destroy();
}
PlayableClip = default;
}
}
}