Genesis-3D 入门教程—23.动画融合

转载 2013年12月06日 10:30:19

  该文章转载自Genesis-3D官网,

更多教程请访问Genesis-3D官网:http://www.genesis-3d.com.cn

动画融合

在本实例中,我们分别制作了融合后的人物动画和未融合的人物动画,通过两者的对比,展示了Genesis-3D编辑器所提供的完美的动画融合效果。

1.创建工程。我们可以直接利用之前做好的“动画”工程。在入门实例中找到“动画”,点击“工程下载”下载工程,打开工程,一个人物动画出现在场景中:

2.运行游戏,可以看到人物动画效果:

3.为了形成对比,我们需要在场景中放两个人物动画,一个设置动画融合,另一个不设置,通过比较看出效果:

(1)复制人物动画zhujue_02,粘贴,可得到完全相同的第二个人物动画:

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

4.编辑代码

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

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

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所能实现的强大的动画融合效果呢?赶快动手做出漂亮流畅的动画效果吧!

 

unity3D新版动画如何实现动画的融合

新版动画如何实现动画的融合,下面是一个实现了边跑边攻击的动画融合实例。 首先在Project面板中创建两个Animation Mask,分别命名为upperBody,lowerBody,并设...
  • yhcxiaoxiong
  • yhcxiaoxiong
  • 2016年10月31日 19:42
  • 1845

Unity3D教程:动画融合、动画层、动画混合、附加动画、程序动画、动画重放和取样

原帖地址:http://www.unitymanual.com/5323.html 动画脚本 Animation Scripting Unity's 动画系统允许你创建一个漂亮的动画蒙皮角...
  • qq168213001
  • qq168213001
  • 2015年06月05日 18:00
  • 3973

超融合2.0真的来了!

超融合2.0时代真的来了吗?2018新年伊始,畅享网《中国超融合应用研究报告》新鲜出炉,报告的重要结论是,超融合已经步入2.0阶段。1超融合向2.0跃升 国内最早提出“超融合2.0”这一说法的厂商是联...
  • Bmo40mqfG249H
  • Bmo40mqfG249H
  • 2018年01月09日 00:00
  • 149

混合树实现三种动画融合

1.导入角色 2.加入Animation中的Controller;双击Controler目标栏 3.出来Animator设置窗口 4.拖入的动画,设置默认动画,右键点击空白处设置Blend Tr...
  • qq_39737381
  • qq_39737381
  • 2017年09月02日 10:58
  • 161

3DS Max动画融合过渡

  • moonboat0331
  • moonboat0331
  • 2013年08月30日 12:21
  • 858

Genesis-3D 入门教程—2.创建工程

该文章转载自Genesis-3D官网,更多教程请访问Genesis-3D官网:http://www.genesis-3d.com.cn 创建工程 开始制作一个游戏的第一步就是创建工程。...
  • u012993923
  • u012993923
  • 2013年12月04日 17:42
  • 587

Genesis-3D 入门教程—27.音频处理

声音是游戏中非常重要的组成部分,Genesis-3D提供了多样的声音特效处理方式,方便用户制作丰富多彩的声音效果。本例从基本音频属性、混音过滤器、音频监听器等方面展示音频处理效果;实现播放3D声音,场...
  • u012993923
  • u012993923
  • 2013年12月06日 10:55
  • 799

Genesis-3D 入门教程—8.天空盒

该文章转载自Genesis-3D官网,更多教程请访问Genesis-3D官网:http://www.genesis-3d.com.cn 天空盒 在Genesis-3D的世界中,所有...
  • u012993923
  • u012993923
  • 2013年12月04日 17:57
  • 619

Genesis-3D 入门教程—10.粒子系统

该文章转载自Genesis-3D官网,更多教程请访问Genesis-3D官网:http://www.genesis-3d.com.cn 粒子系统 粒子系统是Genesis-3D编辑器里...
  • u012993923
  • u012993923
  • 2013年12月04日 18:01
  • 641

Genesis-3D新手入门教程集锦

专题介绍 Genesis-3D引擎由搜狐畅游投资3000万美元,耗时四年完成,开发团队近百人。它是中国首款自主研发的跨平台游戏引擎,同时也是全球首款3D商业级开源游戏引擎。本专题将围绕Genes...
  • pizi0475
  • pizi0475
  • 2015年07月09日 21:20
  • 864
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Genesis-3D 入门教程—23.动画融合
举报原因:
原因补充:

(最多只允许输入30个字)