在中使用精灵动画引擎的两种方法
本文将介绍两种简单快捷的方法来制作游戏角色动画。
1、动画和动画
设置场景
添加用于此场景中不同动画的精灵文件夹
创建一个2D 精灵对象,并把空闲动画的第一个精灵分配给它
创建名为WithScripting的脚本并将其添加到主对象上
现在,按照以下步骤创建不同的动画
(1)把Idle Animation文件夹中所有的精灵拖动到我们的主对象上,一个新动画就做好啦。然后Unity会把这个动画名称命名为Idle。
(2)把Kick Animation文件夹中所有的精灵拖动到我们的主对象上,一个新动画就做好啦。Unity会把这个动画名称命名为Kick。
(3)把Walking Animation文件夹中所有的精灵拖动到我们的主对象上,一个新动画就又做好啦。Unity会把这个动画名称命名为Walk。希这样三个动画就准备好了。
(4)动画会自动添加到主对象中。
(5)现在根据下图设置过渡和触发。
以下转换中要设置的触发器:
脚本代码如下:
- ScriptToAnimate.cs
- using UnityEngine;
- using System.Collections;
- public class ScriptToAnimate : MonoBehaviour
- {
- public Animator animator;
- void Update()
- {
- if (Input.GetKeyDown(KeyCode.I))
- {
- animator.SetTrigger("Idle");
- }
- if (Input.GetKeyDown(KeyCode.K))
- {
- animator.SetTrigger("Kick");
- }
- if (Input.GetKeyDown(KeyCode.W))
- {
- animator.SetTrigger("Walk");
- }
- }
- }
[color=rgb(51, 102, 153) !important]复制代码
脚本中内容如下:
现在回到Unity,选择播放场景,空闲动画处于默认播放状态。分别按下I,K和W键,预览动画。
看到你的角色了吗?
耶!你的角色活起来啦!你的角色现在不仅会呼吸,还会跑会跳啦!
2、使用脚本做动画
设置好场景
添加用于此场景中不同动画的精灵文件夹
创建一个2D 精灵对象,并把空闲动画的第一个精灵分配给它
创建名为AnimationWithScripting的脚本,把它连接到主对象上。
脚本代码如下:
- AnimationWithScripting.cs
- using UnityEngine;
- using System.Collections;
- public class AnimationWithScripting : MonoBehaviour
- {
- public SpriteRenderer spriteRenderer;
- public Sprite[] walk;
- public Sprite[] idle;
- public Sprite[] kick;
- void Start()
- {
- StartCoroutine(Idle());
- }
- void Update()
- {
- if (Input.GetKeyDown(KeyCode.I))
- {
- StopAllCoroutines();
- StartCoroutine(Idle());
- }
- if (Input.GetKeyDown(KeyCode.K))
- {
- StopAllCoroutines();
- StartCoroutine(Kick());
- }
- if (Input.GetKeyDown(KeyCode.W))
- {
- StopAllCoroutines();
- StartCoroutine(Walk());
- }
- }
- IEnumerator Idle()
- {
- int i;
- i = 0;
- while (i < idle.Length)
- {
- spriteRenderer.sprite = idle;
- i++;
- yield return new WaitForSeconds(0.07f);
- yield return 0;
- }
- StartCoroutine(Idle());
- }
- IEnumerator Walk()
- {
- int i;
- i = 0;
- while (i < walk.Length)
- {
- spriteRenderer.sprite = walk;
- i++;
- yield return new WaitForSeconds(0.07f);
- yield return 0;
- }
- StartCoroutine(Walk());
- }
- IEnumerator Kick()
- {
- int i;
- i = 0;
- while (i < kick.Length)
- {
- spriteRenderer.sprite = kick;
- i++;
- yield return new WaitForSeconds(0.07f);
- yield return 0;
- }
- StartCoroutine(Kick());
- }
- }
[color=rgb(51, 102, 153) !important]复制代码
5. 在Unity检查器的后续列表中添加步行、踢和空闲状态的精灵
脚本中内容如下:
现在回到Unity,选择播放场景,空闲动画处于默认播放状态。现在分别按下I,K和W键,预览动画。
看到你的角色了吗?
对!你的角色又活起来啦!又活蹦乱跳啦!有没有很开心呀?
等等,究竟这两个方法哪个比较好?
emmm,在分析器中检查时,这两种方法的运行方式是相同的。
所以,你完全可以根据自己的需要来选择其中一种方法。
via:西山居技术
锐亚教育,游戏新闻,游戏行情,游戏投资,游戏发行,游戏开发,游戏论坛,游戏教程
- 还没有人评论,欢迎说说您的想法!