我刚刚学会了简单地拖动第三人称角色控制器预制件(来自Unity的标准资产包)并将其放入层次结构中是多么容易。
使用WSAD和Space键感觉非常自然,所以我想知道是否可以将相同的角色控制器应用于自定义的头像。
使用免费的AutoDesk角色生成器(https://charactergenerator.autodesk.com/)我创建了一个(fbx文件)并将其导入Unity,所以现在我有自己的角色预制件。
然后,我搜索了动画的步骤,就像第三人称角色控制器一样,下面的文章首先出现,但我想知道我是否总是要做所有的步骤?
http://blogs.unity3d.com/2014/04/14/turn-your-character-into-a-player/
一旦你有一个Unity预制件形式的自定义角色,应该仍然完成所有这些步骤,或者是否有更简单的动画你的化身的方式;例如添加基本必需的脚本?
答案 0 :(得分:1)
该文章概述了所需内容。
但是,使用autodesk字符生成器时,基本上可以跳过几乎所有这些步骤。
这是一个快速的方法:
要做到这一点:
现在,如果你跑步,你会看到你的角色站在那里空闲的动作。如果双击角色上的动画控制器,它将打开Mecanim Animtor窗口,您可以手动设置动画状态。尝试将速度更改为1.0,您将看到他走路/跑步。
注意:在角色的动画组件中,如果勾选"应用根动作",那么脚动画将使你的化身在他的速度>时自动移动。 0
你说你正在使用一个CharacterController,所以这里有一个非常简单的脚本,引用角色控制器来获取当前速度,然后在Animator上设置速度:
using UnityEngine;
using System.Collections;
public class CharacterAnimator : MonoBehaviour {
public CharacterController controller;
public Animator animator;
private int speedid;
void Start () {
animator = GetComponentInChildren<Animator>();
controller = GetComponent<CharacterController>();
speedid = Animator.StringToHash("Speed");
}
void Update () {
float speed = controller.velocity.magnitude;
animator.SetFloat(speedid, speed);
}
}