《Genesis-3D游戏引擎系列教程-进阶篇》9:动画融合

注:本系列进阶教程仅针对引擎编辑器:v1.2.2及如下版本

动画融合

素材资源   工程文件 html

在本实例中,咱们分别制做了融合后的人物动画和未融合的人物动画,经过二者的对比,展现了Genesis-3D编辑器所提供的完美的动画融合效果。 并发

1.建立工程。咱们能够直接利用以前作好的“动画”工程。在入门实例中找到“动画”,点击“工程下载”下载工程,打开工程,一我的物动画出如今场景中: 编辑器

2.运行游戏,能够看到人物动画效果: ide

3.为了造成对比,咱们须要在场景中放两我的物动画,一个设置动画融合,另外一个不设置,经过比较看出效果: 动画

(1)复制人物动画zhujue_02,粘贴,可获得彻底相同的第二我的物动画: 网站

(2)此时场景中就有了两我的物。从左到右分别命名为"player01"和"player02",调整人物位置,使其以下图排列: ui

4.编辑代码 spa

(1) 找到动画的代码文件UserDefCSharp.csproj,用Mono打开。若是已经将Mono和Genesis-3D编辑器链接,那么直接双击脚本文件,就能打开。 3d

(2)往里添加控制动画融合的代码。添加后代码以下: htm

01 using System;
02 using System.Runtime.CompilerServices;
03 using ScriptRuntime;
04 namespace ScriptRuntime
05 {
06     public class ChactorControll : ScriptableClass
07     {
08         string ForwardAnim = "asset:forward.anim";
09         string RelaxAnim = "asset:relaxation2.anim";
10         public string PlayType="PLAYING";
11         //定义字符串并调用编辑器内部存储的动画资源。
12         public override void OnFrame()
13         {
14             if (Input.KeyPressed(Code.W) )
15             {
16                 if(PlayType=="PLAYING")
17                 {
18                     Owner.Animation.PlayAnimation(ForwardAnim);
19                 }
20                 else if(PlayType=="CROSSFADING")
21                 {
22                     Owner.Animation.CrossFading(ForwardAnim,0.5f);
23                 }
24             }
25             //若是按住W键,控制播放前进动画。
26             else
27             {
28                 Owner.Animation.CrossFading(RelaxAnim);
29             }
30             //其余状况下,则播放休闲动画。
31         }
32     };
33     }

(3)点击"Build"—>"Build UserDefCSharp",对脚本进行编译。左下方出现"构建成功"表示编译经过:

5.在代码中添加的字符串变量PlayType是能够从编辑器中获取的内容。此时咱们能够在右侧脚本栏中看到多了一个PlayType(string)输入框,里面输入的内容就是程序中变量PlayType得到的值。咱们设置player01的PalyType值=PLAYING,player02的PalyType值=CROSSFADING:

6.运行并发布游戏:

每一个人物都有休闲动做和前进动做。在播放休闲动做时,两个动画的效果同样:

当按住键盘上W键,须要实现从休闲动画到前进动画的转换时,两个动画人物的效果出现差异:左侧player01因为设置了动画融合,因此在转换时有一个天然地过渡,右侧player01因为没有设置动画融合,发生转变时比较忽然,动做生硬,没有过渡:

看到这里,是否是已经了解了Genesis-3D所能实现的强大的动画融合效果呢?赶快动手作出漂亮流畅的动画效果吧!

引擎官方网站:http://www.genesis-3d.com.cn/

官方论坛:http://bbs.9tech.cn/genesis-3d/

官方千人大群:59113309   135439306

YY频道-游戏开发大讲堂(彻底免费,按期开课):51735288 

Genesis-3D开源游戏引擎:游戏起源,皆因有我!!!

相关文章
相关标签/搜索