注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

About DEPT 有关部门

UDK&CryEngine3开发经验&教训分享

 
 
 

日志

 
 

[官方]在UDK里面做多个动作的叠加组合  

2011-02-24 17:16:30|  分类: 基础问题 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

概述

可以在动画集编辑器和查看器中创建及操作叠加型动画,可以在动画树编辑器中使用叠加型动画。这个文档解释了什么是叠加型动画,以及如何在虚幻引擎工具包中创建及使用它。

什么是叠加型动画?

叠加型动画主要是通过把两个动画彼此进行相减来创建。存储这两个动画间不同的内容。以便使叠加型动画本身不是真正的没有用处,它需要被添加到另一个动画上来展现一些东西(因此称它为叠加型动画)。使用叠加型动画底层的想法是,找到可以应用到多个动画上的叠加姿势。这可以降低每个状态所需要的动画的数量。比如一个武器弹药装载动画可以制作成为叠加动画。现在它可以被添加到空闲动画、走步的动画集(前、后、左和右)上面,对跑步也可以做同样处理。 所以不是进行一个Reload_Walk_Fwd(装载弹药向前行走)的动画,以及所有其它的结合物,而是制作一个Reload_Additive(装载弹药的叠加型)动画,然后把它附加到Walk_Fwd(向前走)、 Run_Bwd (向后跑)等等的动画上。

叠加型动画的优势

上面的例子真正地解释了叠加型动画的优势。它意味大大地降低了所需要的动画的数量。也就意味着美术工作人员需要更少的时间来创建动画,同时混合树也变得更小及易于管理。

叠加型动画VS过滤器

上面的武器重新装载弹药的例子也可以使用另一种方式实现。作为替换可以使用过滤器来完成,因为重新装载弹药动画仅在人物的上半身播放,所以可以保持下半身不变,播放静止、走动或者跑动的动画,在那种情况中使用过滤器(或蒙板)时存在的问题是它完全地覆盖了上半身的动画。所以当它处于空闲的站立时,看上去是非常僵硬的,而不是跑动的,看上去也不是非常自然。即使沿着脊柱和肩部进行对过滤器权重进行插值,效果也不是很好。通过使用一个叠加型动画,便可以保存两个运动(全身的运动和重新装载弹药的运动),并且可以产生较好的视觉效果。

叠加动画存在问题

叠加型动画存在的问题是,把两个动画叠加到一起并不能总是产生您想要的效果。当构建时,叠加型动画是两个姿势间的不同部分。您所得到的是一个叠加姿势,它在一个基础骨骼上可以工作的很好。如果Additive = Anim1 - Anim2,那么Anim1 = Anim2 + Additive,这样看上去很好。但是如果您现在使用Anim3 + Additive,结果或许看上去有些糟糕。您可能会看到枪支在面部剪辑、人物看上去不自然等等。所以创建及使用叠加型动画不是一个容易的过程。一般,您将会想在一个非常接近于基础姿势的动画上使用叠加动画,您也将会想使用IK骨骼来修复在四肢中的错误。一个常见的问题是使用叠加型动画来影响一个人物的臀部和腿部,但最终的结果并没把脚部放置到您期望放置的位置上。请为脚部使用IK骨骼来解决这个问题。

创建叠加型动画

您想用于进行减法操作的两个动画必须在同一个动画集中。在动画集编辑器中打开该动画集。在浏览器中选择一个动画。如果您想执行Additive = A – B,那么您首选应该选择A,然后在工具条中的AnimSequence(动画序列)菜单下的"Convert Sequence(s) to Additive Animation(s)(转换序列为叠加型动画)”菜单项,如下图所示:

AdditiveMenu.jpg

一旦您选择了那个菜单项,将会出现一个新的窗口,如下所示:

AdditiveCreation.jpg

第一个方框问您选择哪种方法来构建叠加型动画。作为澄清,操作是Destination (叠加动画) = Source[源动画] (选中的动画) - Base Pose[基础姿势]。

Reference Pose(参考姿势)使用骨架网格物体的绑定姿势为基础姿势。
Animation First Frame (动画第一帧)使用基础姿势动画的第一帧。
Animation Scaled(缩放的动画)将缩放基础姿势动画来匹配源动画的长度。

编号#2 和 #3将让您选择动画做为基础姿势。在第一种情况中,仅第一帧用于创建叠加型动画;在第二种情况中,基础动画将会被缩放来匹配源动画的长度,然后执行减法计算。

最终创建了一个名称为ADD_(Name_Of_Source_Animation)的叠加型动画。

查看叠加型动画

因为叠加型动画是一个差异姿势,所以它不是用于让您查看的东西,并且它本身不能产生任何意义。为了帮助您可视化叠加型动画,在创建过程中,基本姿势将和叠加型动画一同存储,并且可以用于预览。所以您在动画集编辑器中所看到的是 基础姿势+叠加型动画。骨架的显示也会说明这一点。在工具条上的那个图标的旁边,也有一个图标用于查看基础姿势动画。点击这个图标,将会以紫色显示基础姿势骨架。在以下的屏幕截图中,您可以看到两个骨架以及叠加型动画是如何把基础姿势(紫色)转化为我们所看到东西(白色)。

AnimSetViewerAdditive.jpg

播放叠加型动画

叠加型动画在动画树编辑器中可以通过使用两种方式进行播放。或者通过使用一个AnimNodeAdditiveBlending节点,或者通过使用一个AnimNodeSlot。

AnimNodeAdditiveBlending(叠加混合动画节点)

这个节点有两个输入端。一个是基础姿势,它取入一个标准的动画。第二个输入端取入一个叠加型动画。滑块允许我们控制应用到基础姿势上的叠加型动画的量(0 - 100%)。

AdditiveBlendingNode.jpg

AnimNodeSlot(插槽动画节点)

AnimNodeSlots理解如何处理叠加型动画。所以您不需要以特殊的方式来使用它。仅需要在它上播放一个叠加型动画即可,它不是覆盖Source(源)输入端,而仅是向它添加了一个叠加型动画。

叠加型动画操作

在动画集查看器工具条中的动画序列菜单中,可以对这些叠加型动画进行操作。

AdditiveMenu.jpg

添加/减去 叠加型动画

通过选择"Add Additive Animation to selected sequence(s)(添加叠加型动画到选中序列)" 或 "Subtract Additive Animation to selected sequence(s)(从选中序列减去叠加型动画)"。

AddSubtractAdditive.jpg

第一个框允许您输入要新建的动画的名称。

第二个框允许您选择如何把两个动画组合到一起。

Scale Additive To Source(缩放叠加型动画到源动画)缩放增加型动画来匹配源动画的长度。
Scale Source To Additive(缩放源动画到叠加型动画)缩放源动画来匹配增加型动画的长度。

第三个框允许您选择要使用的叠加型动画。注意您可以从一个正常的动画或者另一个叠加型动画上加上或减去一个叠加型动画。

  评论这张
 
阅读(1325)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017