三维软件中制作动画导入Unity中使用

Posted DaLiangChen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了三维软件中制作动画导入Unity中使用相关的知识,希望对你有一定的参考价值。

一、在Maya中制作动画

1.在Maya中新建一个立方体

2.将立方体的大小改成20*20*20

3.在30帧的位置,将立方体大小改成100*100*100,并设置为关键帧

4.在100帧的位置,将立方体旋转360度,并设置为关键帧

 

二、导出模型

1.常用的3维模型交换格式有 obj、和fbx 两种,obj 导出的时候是不带动画信息的,导出后动画会丢失。所以我们选择导出fbx

2.选择制作好动画的立方体模型,点击导出 “导出当前选择...” 按钮

3.选择文件格式,并为模型命名(这里我命名为“model.fbx”)

4.Fbx导出设置如下

5.Fbx选项设置完成后,点击 “导出当前选择” 按钮

6.等待导出模型完成后,在对应的位置会有一个后缀名为 .fbx 的文件

 

三、导入模型到Unity

1.在 Aseet 面板中右键,点击 Import New Aeet... 按钮

2.选择我们Maya导出的模型位置

 

四、制作动画片段

1.选中我们导入的“model.fbx”模型,点击右上角 Animation 按钮

2.将默认的“Take001”命名为“Idle”,并设置开始时间为1帧,结束时间为1帧

3.点击“+”号按钮,新建2个动画片段,并设置其开始帧和结束结束帧(效果如下)

 

五、制作动画控制器(Animator Controller)

1.在Asset 面板右键,点击Create-> Animator Controller 按钮,将创建出来的动画控制命名为“ModelAnimatorCtr”

2.双击 ModelAnimatorCtr ,打开动画控制器编辑面板

3.选择 model.fbx 模型,将我们前面制作好的动画片段拖动到动画控制器编辑面板中

4.制作3个触发事件并为其分别命名。(效果如下)

5.选择 AnyState 右键,点击 Make Transition 按钮

6.链接需要触发的动作

7.点击中间链接线,为其设置触发事件

8.按照上面的步骤,将Idle、Zoom、Rotate 触发事件设置一下(效果如下)

9.新建一个新场景,并将model.fbx 模型添加到,新创建出来的场景中

 

六、用代码控制动画播放

1.新建一个脚本,命名为“TestAnimation.cs”。(代码如下)

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

/// <summary>测试控制动画播放</summary>
public class TestAnimation : MonoBehaviour
{
    private Animator m_Animator;

    private void Awake()
    {
        m_Animator = gameObject.GetComponent<Animator>();
    }

    private void Update()
    {
        if(Input.GetKeyDown(KeyCode.Alpha1))
        {
            Debug.Log("播放Idle动作!");
            m_Animator.SetTrigger("Idle");
        }

        if (Input.GetKeyDown(KeyCode.Alpha2))
        {
            Debug.Log("播放Zoom动作!");
            m_Animator.SetTrigger("Zoom");
        }

        if (Input.GetKeyDown(KeyCode.Alpha3))
        {
            Debug.Log("播放Rotate动作!");
            m_Animator.SetTrigger("Rotate");
        }
    }

}

2.在model 对象上添加 Animator 组件,并设置其 Controller 属性

3.将 TestAnimation.cs 脚本,挂载到 model 对象上,大功告成!

 

Unity QQ交流群:299412191 欢迎对Unity感兴趣的同学加入.

以上是关于三维软件中制作动画导入Unity中使用的主要内容,如果未能解决你的问题,请参考以下文章

ppt中的三维效果怎么使用

Unity 3D 导入三维模型||Unity 3D 动画系统简介(Mecanim)

Unity编程Unity动画系统

MAX和UNITY的一些潜规则

怎么通过程序控制unity3d人物动作

求教如何在Unity中为2D游戏制作技能特效