Files
Ultimate-Fishing-Simulator-…/Assets/Scripts/Assembly-CSharp/RootMotion/FinalIK/Poser.cs
2026-03-04 09:37:33 +08:00

67 lines
991 B
C#

using UnityEngine;
namespace RootMotion.FinalIK
{
public abstract class Poser : SolverManager
{
public Transform poseRoot;
[Range(0f, 1f)]
public float weight = 1f;
[Range(0f, 1f)]
public float localRotationWeight = 1f;
[Range(0f, 1f)]
public float localPositionWeight;
private bool initiated;
public abstract void AutoMapping();
public virtual void AutoMapping(Transform[] bones)
{
}
public void UpdateManual()
{
UpdatePoser();
}
protected abstract void InitiatePoser();
protected abstract void UpdatePoser();
protected abstract void FixPoserTransforms();
protected override void UpdateSolver()
{
if (!initiated)
{
InitiateSolver();
}
if (initiated)
{
UpdatePoser();
}
}
protected override void InitiateSolver()
{
if (!initiated)
{
InitiatePoser();
initiated = true;
}
}
protected override void FixTransforms()
{
if (initiated)
{
FixPoserTransforms();
}
}
}
}