转自:http://blog.ch-wind.com/ue4%E5%8A%A8%E7%94%BB%E5%8A%9F%E8%83%BD%E6%95%B4%E7%90%86/

工欲善其事必先利其器,最近一段开始了对UE4动画功能的系统性整理和学习。好在现在UE4的文档中文化已经开始了,有的文档是中文的,读起来也轻松很多。

当前使用的UE4版本为4.6.1。

AnimBlueprints

动画蓝图分为通常的事件图表和专有的动画蓝图两种,其中动画蓝图主要负责通过读取到的变量进行相应的动画播放。事件图表则是负责更新数值和状态变量。

Animation Composite

动画合成的作用是将多个动画进行组合变成新的合成动画,对于经常性的会进行序列播放的动画将其整合成一个进行管理和使用比较方便。

Skeletal Controls

骨骼控制可以实现在动画播放的过程中精确到单个骨骼的播放控制,这样可以使得代码对动画的播放拥有更多的灵活性。操作相对简单,可以在使用到时参考文档

Physics-Based Animation

基于物理的动画,可以对骨架中的部分骨骼开启物理模拟。不过要正常的打开物理模拟需要为物体指定物理资源。

IK

IK的作用相信玩过相关游戏的童鞋都比较清楚,简单的来说就是用脚来控制大腿的感觉。通过脚、手的位置来逆向的沿着骨架调整动画。其作用是让动画变得更加真实,和骨骼控制相配合即可。需要用到时参照官方的示例即可。

Animation Retargeting

就是将动画共享给其他模型,减少动画制作的成本。主要分为两种形式,一种是在骨骼相同的模型之间使用相同的动画。另一种是通过Rig这个中间件使得骨骼结构不同的模型得以使用共享的动画。Rig的原理类似于对骨骼进行映射,相对的同骨骼架构本身就是可以共享动画的。这个部分相对简单,需要实际应用时参照官方文档操作即可。

Animation Notifications

动画通知可以使得我们在动画播放的某个阶段进行声音的播放、粒子系统的演出或者触发事件接口。

Animation Curves

通过曲线来对变形动画动画的数值进行更改和控制。

AnimMontage

Montage的主要功能是动画的管理和组织,通过将放置于slot中的一个或多个动画在sections中重组,可以让代码更好的对动画播放进行控制。同时Montage还提供了section播放时的分支点功能,分支点的功能和动画通知事件类似,区别之处在于分支点是同步的。因此分支点在时间上将会更加精确,同时也更加消耗系统资源。AnimMontage的一个重要作用之一,就是通过Slot的形式给予了代码层对AnimGraph的动画播放的控制权限。

Root Motion

根骨骼的功能是为会产生移动的动画提供锁定。例如美术资源的动画是包含位移的情况,直接应用这个动画就会导致角色的碰撞检测实体和显示的物体之间的分离。官方的演示图片很直观的展示了这个问题:

Blend Space

动画混合可以将两个或多个动画混合起来,通过调整暴露出来的值来调节混合的程度。例如当速度小于100时播放行走动画,当速度大于300时播放奔跑动画。而在100~300之间则播放行走和奔跑动画的混合。而如果进一步的混合向左、向右和向后的行走和奔跑动画的话,就可以轻松的实现八方向行走动画了

Additive Animations

UE4可以在动画混合时将动画单独指定给某个骨骼以及其所有的子节点。这样以来就可以实现只给上半身播放特定的动画,而人物可以进行行走、下蹲或者站立不受其影响。其核心的部分是Layered blend per bone结点:

在其属性LayerSetup中进行指定:

就可以实现只将射击动画传递到上半身。详细的实现可参照文档

Aim Offset

Aim Offset是用来实现多方向瞄准的动画混合。和其他的动画混合一样,需要提供面向各个方向瞄准的动画作为blend的基础。官方的示例中演示了如何从动画中通过删除帧数来生成这些动画的过程。

得到上面那些动画之后,给每一个动画指定Additive Settings为正射的动画即可新建Aim Offset了。

操作模式是blend通用的。

Socket

通过在骨骼上附加Socket,可以使得额外的物体可以附加在骨骼上。

可以在游戏逻辑中通过蓝图进行附加操作,也可以直接在编辑其中进行附加以检测或改变模型的外观。

———————

总体而言,UE4提供的动画工具都是比较直观明了的。主要的概念也就上面总结的这些,有需要具体使用时再详细的参照文档进行实现。操作过两三遍之后应该就能熟练掌握了。

UE4动画功能整理的更多相关文章

  1. CSS3中的动画功能(一)

    css3中的动画功能分为transitions功能和animations功能,这两种功能都可以通过改变css属性值来产生动画效果.今天带大家一起来看看css3动画功能中的transitions的用法. ...

  2. CSS3基础(2)—— 文字与字体相关样式、盒子类型、背景与边框相关样式、变形处理、动画功能

    一. CSS3 文字与字体相关样式 1. 给文字添加阴影 text-shadow: length length length ccolor; 属性适用于文本阴影,指定了水平阴影,垂直阴影,模糊的距离, ...

  3. css3动画功能介绍

    一:过渡动画---Transitions 含义:在css3中,Transitions功能通过将元素的某个属性从一个属性值在指定的时间内平滑过渡到另一个属性值来实现动画功能. Transitions属性 ...

  4. 不定期更新的IDEA功能整理

    目录 不定期更新的IDEA功能整理 idea 命令 Preferences 和 Project Structure Keymap HTTP Proxy Postfix Completion 插件 插件 ...

  5. (六)Unity5.0新特性------新动画功能

     unity 5.0 中的新动画功能 这里是你能够期待的新动画功能高速概述 ! State Machine Behaviours状态机行为 在Unity 5 中,你会能够将StateMachine ...

  6. Android 项目框架功能整理记录

    用来记录自己在项目用到的框架工具等,新人新记录,希望能对你搭建项目有所帮助 常用框架整理 视图绑定注解框架: butterKnife 网络请求框架: OKHttp 图片加载缓存:Gilde 数据格式解 ...

  7. OpenCASCADE动画功能2

    OpenCASCADE动画功能2 eryar@163.com OpenCASCADE是一个开发平台,主要提供三维曲面和实体建模.CAD数据交换及可视化等功能.OCCT最适用于开发三维建模CAD软件.加 ...

  8. OpenCASCADE动画功能

    OpenCASCADE动画功能 eryar@163.com 1.Introduction OpenCASCADE提供了类AIS_Animation等来实现简单的动画功能. 从其类图可以看出,动画功能有 ...

  9. UE4高级功能--初探超大无缝地图的实现LevelStream

    转自:http://blog.csdn.net/u011707076/article/details/44903223 LevelStream 实现超大无缝地图--官方文档学习 The Level S ...

随机推荐

  1. 绘制三角形(sass)

    绘制三角形 /// draw triangle/// @param {type} $type [''] - triangleUp triangleDown triangleLeft triangleR ...

  2. PHP使用前的了解

    PHP简介 PHP 是什么? PHP(全称:PHP:Hypertext Preprocessor,即"PHP:超文本预处理器")是一种通用开源脚本语言. PHP 脚本在服务器上执行 ...

  3. 20165332 学习基础和C语言基础调查

    学习基础和c语言基础调查 一.技能学习经验 从小学过很多东西,架子鼓.电子琴.街舞.吉他.书法.美术......爱好也有很多,乒乓球.篮球.唱歌......这么多项技能,要说那一项比大多数人好,还真的 ...

  4. mcake活动维护,检查 ★ ★

    一.检查火狐浏览器.chrome浏览器.ie8.9.10.11是否显示正常 二.对比设计稿 三.动画添加 四.检查图片是否失真 五.ie8空按钮无法点击 六.官网banner制作

  5. 视图框架:Spring MVC 4.0(1)

    目录 一.表单标签库 1.1.简介 1.2.常用属性 1.3.form标签与input标签 1.4.checkbox标签 1.5.radiobutton标签 1.6.password标签 1.7.se ...

  6. 程序猿之GitHub

    介绍 GitHub是一个分布式的代码.文章等等管理仓库.面向开源及私有软件项目. 简单来说,Git 是一个管理你的「代码的历史记录」的工具. 开始使用(知乎总结) 账号注册 创建新工程 克隆到本地 删 ...

  7. Metasploit的基本使用

    Metasploit可以在Linux.Windows和Mac OS X系统上运行.我假设你已安装了Metasploit,或者你使用的系统是Kali Linux.它有命令行接口也有GUI接口. 我使用的 ...

  8. rem第一天

    Rem为单位 CSS3的出现,他同时引进了一些新的单位,包括我们今天所说的rem.在W3C官网上是这样描述rem的——“font size of the root element” .下面我们就一起来 ...

  9. 守护进程vs 守护线程

    # #守护进程 from multiprocessing import Process import os,time,random def task(): print('%s is running' ...

  10. LINUX (centos)设置IP地址,网关,DNS

    首先:备份原始配置文件: [logonmy@logon ~]$ cd /etc/sysconfig/network-scripts/ [logon@logon network-scripts]$ pw ...