我有一个带有此脚本的空游戏对象:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class AnimatorController : MonoBehaviour
{
public Animator[] animators;
public Transform target;
public float speed = 1f;
float sp = 0f;
// Use this for initialization
void Start ()
{
for(int i = 0; i < animators.Length; i++)
{
animators[i].SetFloat("Walking Speed", speed);
}
}
// Update is called once per frame
void Update ()
{
if((animators[2].transform.position - target.position).sqrMagnitude < 3)
{
sp += Time.deltaTime;
sp = Mathf.Clamp(sp, 0f, 1f);
animators[1].SetFloat("Walking Speed", sp);
animators[2].SetFloat("Walking Speed", sp);
}
}
}
我有 3 个角色,每个角色都有一个动画控制器。每个动画师都有一个新的状态名称与 Humanoid walk 一起行走。每个动画师都有一个浮动参数名称,在每个动画师中将其设置为 1.0
在检查器中,我为每个动画师状态添加了参数步行速度。但是接近目标时,3个角色永远不会减速。
在屏幕截图中,每个士兵都有:Space_Soldier_A (4) 和 Space_Soldier_A (5) 具有相同的动画控制器和步行速度参数。
medea_m_arrebola 有它自己的动画控制器,还带有步行速度浮动参数。与士兵的设置相同。所有角色都在行走,但在接近目标时他们从不减速。
慕田峪9158850
相关分类