Unity3d游戏引擎Windy系列教程:常见组件扫盲讲解3(Animator)

大家好,又见面了,今提来谈一谈Animator,这应该是一个非常有用的组件了,它的作用便是人物控制器,应该说是unity里面的一大亮点,当然今天不对他做非常深入的讲解,角色控制应该但做一个板块进行讲解的,今天只是把它当做组件来谈一谈。

上一篇博文里我插入了几句函数,我虽然还没有讲到脚本写法,但是为了更加有针对性的讲解,我还是决定插入一些关键函数,这些函数都是unity自己的,学C语言的话并不会交给你,一般只有盛典和官方教程书会提及。

游戏里面少不了的必然是角色,从我玩过的gta系列和刺客信条系列等等游戏,都依靠着各种角色来充斥整个游戏,unity里提供了控制角色动画和移动的组件,可以让使用者十分方便的塑造角色。

animator与animation的不同在于,后者只能操纵一种动作,不过前者更消耗内存。
使用语句GetComponent<Animation>()即可调用animation组件的相关参数,并进行操作。

当然今天的主角是animator,后面讲角色的时候会讲述更多,比如人型控制器等等。

先上图
在这里插入图片描述
我在场景中导入了一个人物,并为其添加了animator控制器
来张特写

在这里插入图片描述
小巧可爱而功能强大,当然光靠它是不行的,上面Controller还是空的,说明还需要创建一个状态机
上操作

在这里插入图片描述
创建就对了
双击就会出现状态机编辑界面
在这里插入图片描述
状态机也可以单讲了,这里只做简单描述
我这里并没有预先准备的动画文件,如果你们有的话,直接把动画拖进去就好了,等我将角色状态机时将做具体讲解。

当我们把状态机拖到animator里就会变成这样
在这里插入图片描述

  • Avatar代表角色所使用的骨骼
  • Apply Root Motion根运动

选中角色的骨骼
并将其转换为人型,就可以使用unity非常好用的人型控制器了,这样的好处是其它人物的动画可以借过来用。
在这里插入图片描述
在右侧看到实心的是unity检测到的,虚线框的需要手工添加
同样人物还会被摆成T型

animator的句法案例

using UnityEngine;
using System.Collections;

public class Text: MonoBehaviour {

    private Animator a = null;

    // Use this for initialization
    void Start () 
    {
        a= GetComponent<Animator>();//获取当前对象的Animator
    }
    void Update ()
    {
    if (Input.GetKeyDown(KeyCode.W))    //检测键盘输入W
   
           a.SetInteger("变量名", 1);    //变量名处更改为状态机里的变量名称
           }

这期就到这里,后面会出一个板块专门讲角色的。Thanks♪(・ω・)ノ

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值