Animation 动画在统一中一步一步地移动

Animation 动画在统一中一步一步地移动,animation,unity3d,Animation,Unity3d,我必须在Unity中创建动画。动画与木乃伊迷宫中的角色相同() 我希望动画能像木乃伊迷宫游戏一样一步一步的移动 现在,我使用函数 /*targetPosition: position which character will be moved to*/ void Move(Vector3 targetPosition){ this.transform.position = targetPosition; } 但它看起来像是传送。它不是自然移动的 如何帮助我的角色一步一步地自然移动到目标

我必须在Unity中创建动画。动画与木乃伊迷宫中的角色相同()

我希望动画能像木乃伊迷宫游戏一样一步一步的移动

现在,我使用函数

/*targetPosition: position which character will be moved to*/
void Move(Vector3 targetPosition){
    this.transform.position = targetPosition;
}
但它看起来像是传送。它不是自然移动的

如何帮助我的角色一步一步地自然移动到目标位置,而不看起来像传送。谢谢

您将希望使用该模式在每帧中移动木乃伊

公共浮点数移动速度=1;//在inspector中更改此选项,以更改木乃伊移动的速度

Vector3 targetPosition;

void Move(Vector3 targetPosition)
{
    this.targetPosition = targetPosition;
}

void Update()
{
    transform.position = Vector3.MoveTowards(transform.position, targetPosition, MoveSpeed * Time.deltaTime);
}

谢谢福米克,我得试试你的建议。现在,我知道你的想法。我是统一的新手,所以我想问你另一个问题:

当我点击鼠标或按下按钮时如何调用多帧

现在,我捕捉Update()函数上的事件鼠标或按钮。所以,当我按下一次按钮时,我的角色只移动一小段距离。我需要按下按钮几次,以便我的角色可以移动到我想要的位置

如何使用一个按钮将角色移动到目标位置?非常感谢你。(请看我的密码)


谢谢福米克,我得试试你的建议。现在,我知道你的想法。我是Unity的新手,所以我想问你们另一个问题:当我点击鼠标或按下按钮时如何调用多帧?现在,我捕捉Update()函数上的事件鼠标或按钮。所以,当我按下一次按钮时,我的角色只移动一小段距离。我需要按下按钮几次,以便我的角色可以移动到我想要的位置。如何使用一个按钮将角色移动到目标位置?非常感谢你。(请看我的代码)嘿,你真的应该把你的问题标记为已回答,然后把你的另一个问题作为新问题提问,而不是创建一个永无止境的线程。谢谢Formic,它已经实现了。
public float MoveSpeed = 5.0f;
public float Step = 1.0f; //character move one cell one times - distance cells is 1.0f


void Update()
{
     if (Input.GetKeyUp ("d")) {
         float targetPos = this.transform.position.x + Step; //currentX + Step 
         Vector3 targetPosition = new Vector3(targetPos, this.transform.position.y, this.transform.position.z);

         Move(targetPosition); //call to move
     }
}

void Move(Vector3 targetPosition)
{
     transform.position = Vector3.MoveTowards(transform.position, targetPosition, MoveSpeed * Time.deltaTime);
}