如何不引用UnityEditor生成unity的AnimatorController文件
由于UnityEditor是Unity的编辑器工具,因此在运行时不应该使用它来生成AnimatorController文件。相反,您可以使用代码来创建AnimatorController。以下是一个示例:
using UnityEngine;
using UnityEditor.Animations;
public class AnimatorControllerCreator : MonoBehaviour
{
void Start()
{
//创建AnimatorController
AnimatorController animatorController = new AnimatorController();
animatorController.name = "MyAnimatorController";
//创建动画状态
AnimatorState idleState = animatorController.CreateState("Idle");
AnimatorState walkState = animatorController.CreateState("Walk");
//将动画状态添加到控制器中
animatorController.AddState(idleState);
animatorController.AddState(walkState);
//创建过渡和转换
animatorController.AddParameter("Speed", AnimatorControllerParameterType.Float);
AnimatorStateTransition transition = walkState.AddTransition(idleState);
transition.AddCondition(AnimatorConditionMode.Less, 0.1f, "Speed");
transition.duration = 0.1f;
//将AnimatorController绑定到角色的Animator组件上
Animator animator = GetComponent<Animator>();
animator.runtimeAnimatorController = animatorController;
}
}
在上面的示例中,我们创建了一个名为"MyAnimatorController"的AnimatorController,然后创建了两个动画状态:"Idle"和"Walk"。我们还创建了一个参数"Speed",它将在过渡和转换中使用。最后,我们将AnimatorController绑定到角色的Animator组件上。
通过使用代码创建AnimatorController,您可以避免使用UnityEditor并使您的游戏更加可移植。
原文地址: https://www.cveoy.top/t/topic/b1rV 著作权归作者所有。请勿转载和采集!