我正在尝试制作一个简单的2d游戏,但我有一个问题。我有一个可以在随机方向上行走的人工智能,但动画不会改变。在移动时,动画处于空闲动画中。
void Start () {
anim = GetComponent<Animator>();
myrigbody = GetComponent<Rigidbody2D>();
waitCounter = walkTime;
walkCounter = walkTime;
ChooseDirections();
}
void Update () {
if (isWalking)
{
walkCounter -= Time.deltaTime;
switch (walkdirection)
{
case 0:
myrigbody.velocity = new Vector2(0, moveSpeed);
break;
case 1:
myrigbody.velocity = new Vector2(moveSpeed, 0);
break;
case 2:
myrigbody.velocity = new Vector2(0, -moveSpeed);
break;
case 3:
myrigbody.velocity = new Vector2(-moveSpeed, 0);
break;
}
if (walkCounter < 0)
{
isWalking = false;
waitCounter = waitTime;
}
}
else
{
waitCounter -= Time.deltaTime;
myrigbody.velocity = Vector2.zero;
if (waitCounter < 0)
{
ChooseDirections();
}
}
}
public void ChooseDirections()
{
walkdirection = Random.Range(0,4);
isWalking = true;
walkCounter = walkTime;
}
有没有办法让我的AI动画面对他要去的地方?看起来他不会顺着混合树走。
发布于 2018-08-14 21:14:44
使用动画控制器;See this link。
如果你正在开发自上而下的游戏,并且你想让你的游戏对象面对他要去的地方,this link可以帮助你。
https://stackoverflow.com/questions/51840840
复制相似问题