@[TOC]unity人物基础动画应用

1.将动画或带有动画的,模型导入到unity

直接将项目拖入资源层级就好。这里推荐一个网站,可以给导入网站的模型自动绑骨,并且可挑选动画下载。网站自身也带有很多模型可以直接下载。免费又好用,就是可能网有点慢。
链接: link

2.创建动画控制器以及动画控制器设置

1)在项目管理器中右键->创建->动画控制器。双击新建的文件就会弹出动画器的控制界面啦。
2)将动画拖取到动画器中。第一个拖进去的动画将呈现橘黄色并且entry将直接指向这个动画。意味开始的时候就执行这个动画。之后导入的动画呈现灰色需要手动创建过渡。
3)创建过渡,右键AnyState点击创建过度并链接需要的动画。第一次创建过渡并不会出现问题,第二次可能会出现anystate无法选中右键没有创建过渡的情况这个时候。先选中你需要创建过渡的动画按住shift在选中anystate此时右键就可以正常创建过渡了。
4)在左侧的参数栏里添加参数 在参数栏中点击搜索框右边的加号就行,这里建议的是选择Trigger。这里根据要使用的动画创建了三个。


5)点击anystate到各个动画的连线设置连线。在conditions中添加一个并选中为对应的Trigger。walk动画就选中walkTrigger以此类推。

6)在项目资源管理器中选择那些需要循环播放的动画。例如待机动画,走路动画等。将循环时间,循环动作勾选上。

7)在放入场上的模型上添加组件Animator。控制器选择刚刚创建的动画控制器。

3.使用代码控制动画实现人物动作

1)新建一个脚本playerControl并挂载在人物上
2)代码如下

// An highlighted block
[Header("动画")]public Animator ator;private enum CharactorState{walkTrigger,runTrigger,idleTrigger}private CharactorState newstate;private CharactorState oldstate;void Start(){ator = GetComponent<Animator>();newstate = CharactorState.idleTrigger;oldstate = CharactorState.idleTrigger;}void Update(){if (Input.GetKeyDown(KeyCode.W)){if (Input.GetKey(KeyCode.LeftShift)){newstate = CharactorState.runTrigger;}else{newstate = CharactorState.walkTrigger;}}if (Input.GetKeyUp(KeyCode.W)){newstate = CharactorState.idleTrigger;}if (newstate != oldstate){if (newstate == CharactorState.walkTrigger){ator.SetTrigger("walkTrigger");oldstate = newstate;}if (newstate == CharactorState.runTrigger){ator.SetTrigger("runTrigger");oldstate = newstate;}if (newstate == CharactorState.idleTrigger){ator.SetTrigger("idleTrigger");oldstate = newstate;}}}

unity人物基础动画应用。行走、待机之类的简单动画切换。相关推荐

  1. Unity UGUI基础 之 Scroll View/Scroll Rect 的简单使用,并取消拖拽(滑动内容)效果,拖拽只在Scrollbar 上起作用

    Unity UGUI基础 之 Scroll View/Scroll Rect 的简单使用,并取消拖拽(滑动内容)效果,拖拽只在Scrollbar 上起作用 目录 Unity UGUI基础 之 Scro ...

  2. python制作简单动画_用Tkinter Python制作简单动画

    我用Tkinter搜索了一个简单的动画代码,但是我发现了非常不同的例子,我无法理解正确的方法来编写动画. 这里我的工作代码显示一个简单的移动圆:import tkinter as tk import ...

  3. matlab如何制作振型动画_求用matlab制作简单动画实例

    展开全部 具体制作方法如下: 1.首先,这里e5a48de588b662616964757a686964616f31333433626565举例代码如下: x=-8:0.5:8; [XX,YY]=me ...

  4. unity人物旋转移动代码_游戏诞生之日02 - 美术篇 快速制作人物动画

    在上一篇<游戏诞生之日01 - 美术篇 快速搭建和渲染游戏的第一个场景>里,我们得到了一个静态渲染的游戏场景. 接下来我们需要加入人物动画,为游戏注入活力. 第五块拼图 - 动画素材从哪里 ...

  5. Unity Animation从UAS获取动画资产到编制状态机控制简单的人物动画

    Animation 动画 0.前言 这个笔记用于讨论在Unity中开发游戏时使用动画的相关知识. 这个笔记最终期望能够达到:在Unity的Demo中展现一个人物,其能够进行类似挥拳.开门的具体动作. ...

  6. Unity基础笔记(5)—— Unity渲染基础与动画系统

    Unity渲染基础与动画系统 Unity渲染基础 一.摄像机 1. 摄像机概念 和现实中的摄像机很接近,Unity 中 Camera 组件负责将游戏画面拍摄然后投放到画面上 Camera 拍摄到的画面 ...

  7. Unity动画系统学习笔记(一)动画剪辑与状态机

    一.动画系统工作流 一个完整的动画系统工作流包含如下几个部分: 动画剪辑(Animation Clips):包含某些对象如何随时间更改其位置.旋转或其他属性的信息. 状态机(Animator Cont ...

  8. Unity游戏动画 从入门到住院 4:动画状态机

    Unity游戏动画 从入门到住院:动画状态机 发布者: wuye | 发布时间: 2016-9-7 15:02| 评论数: 3 文/拉撒路 上次我们讲过Unity游戏动画从入门到住院,今天我们来讲一下 ...

  9. Unity 从零开始的2D游戏开发 —— [Animator] 使用动画状态机制作简单动画

    动画是一个2D游戏里面必不可少的一部分,使用动画可以实现很多意想不到的功能,除了常规的人物动画,还可以实现一些周期性的运动.接下来会尝试实现一个非帧动画,一个帧动画. 一.非帧动画:通过改变位置或拉伸 ...

最新文章

  1. PCA(2):PCA算法实现的两种方式
  2. 浅析Codewarrior、IAR和Keil MDK三大开发环境优缺点
  3. Qt中子线程创建运行时候出现QObject: Cannot create children for a parent that is in a different thread
  4. 通过Lazada成功打造自主女包品牌,这2个大学生是怎么做到的?
  5. 跟小段一起学Solaris(20)---ipFilter防火墙
  6. 硬件工程师前途到底怎样?看看大佬怎么说,看完跪了
  7. 邻接表的建立与spfa算法
  8. SQLite 入门教程(四)增删改查,有讲究 (转)
  9. 我与Bootstrap
  10. DHCP报文详解及抓包实例
  11. 去除痘痘祛斑ps教程学习抠图ps婚纱照修图课程入门基础
  12. Foxmail设置雅虎邮箱的方法
  13. linux系统如何拨号上网连接,linux系统下怎样进行拨号上网?
  14. 小白的python学习之路-turtle画不同大小的五角星
  15. 检测和缓解PLC恶意软件的过程计算方法
  16. [JZOJ5594][min25筛]最大真因数
  17. 测试方法——因果图法和判定表法
  18. mac 备份文件 太大 时间机器_如何在Mac OS X中设置时间机器备份 | MOS86
  19. ❤️保姆级!超详解!远程连接Linux虚拟机!❤️
  20. JPG,PNG,BMP图片无损压缩软件

热门文章

  1. ros理论与实践网盘资源
  2. 团队项目设计完善编码测试
  3. linux的wq 与wq的区别,Linux ESC :wq 和:wq!的区别
  4. Symbian 开发知识
  5. IPv6静态路由设置
  6. 经典案例:卖票问题【线程同步】
  7. 创建三个窗口进行卖票 总票100张 使用实现Runnable接口的方法实现
  8. 我不常用的Linux命令
  9. 视频教程-【10天企业定制课】2019年PS软件photoshop/CC应用计划学习视频-UI
  10. 用数组存储三个学生对象,并遍历数组