Unity3D Mecanim :Body Mask的使用、 角色Retargeting原理分析、Apply RootMotion
一、Body Mask的使用
1.1、配置好骨骼后通过Muscles来微调角色骨骼中的运动范围,以避免角色在动画中的不正确的叠加或失真等现象。
1.2、身体遮罩BodyMask更形象的描述就是身体的开关,可以关闭或打开身体某些部分就可以起到改变输入的动画片段的播放效果。主要运用在输入角色的性编辑器中以及动画层中。
1.3、选择角色来到Animations动画片段标签,在动画片段中可以指定其范围以及播放,动画片段的微调。
1.4、身体遮罩的优点:可以控制或调节动画的效果、可以减少角色中动画曲线的数量,关闭身体某些部分可以减少角色动画在播放时数量从而减少计算机的内存和CPU的负担。
1.5、肌肉设置和BodyMask区别:
(肌肉设置是在avatar中的配置中,BodyMask是在动画FBX中的Animations中)
肌肉片段的设置:其实是改变输入设置,将影响所有动画片段,而对于身体遮罩它是每一个动画片段都有一个身体遮罩,它改变的知识自身动画片段。
二、Mecanim的Retargeting
Retarget:vt. 把…作为新目标(或对象),把…指向新目标
2.1、通过Avatar的创建,可以实现角色之间的retargeting,Retargeting的字面含义是目标的重新设定,但在Mecanim中指的是角色动画在经过Avatar处理过的骨骼间的重新应用或互用。
简而言之就是:(角色必须通过Avatar的处理后)通过Avatar的创建所有的角色骨骼之间都变成人类的骨骼,当所有的骨骼一样时这样在不同角色上的动画就可以实现互相应用(eg:你的骨骼上动画可以用到我的骨骼上的动画)
2.2、如何使用Retargeting
角色动画控制器:主要用于控制角色中的动画及逻辑处理。包含了动画中使用的动画
动画状态机:
动画过渡:
2.3、Unity中所使用的动画片段主要来自:外包软件包Maya、3Dmax由动画师创建并输出的动画片段、 另一个来源是由运动捕捉数据所生成的动画片段。
2.3.1、动画师手动创建的动画:在输入之前都会进行很好的循环处理,如某个角色的动画“走”循环,其起始的姿势和结束的姿势通常都处于类似的姿势,可以产生很好的动画片的。
2.3.2、运动捕捉数据
调节脚步与地面的距离

三、Apply RootMotion
Apply RootMotion:控制角色在场景中动画的运动。
角色动画驱动角色运动,类似于在游戏中直接使用动画,提高了动画的使用效率。
Unity3D Mecanim :Body Mask的使用、 角色Retargeting原理分析、Apply RootMotion的更多相关文章
- Unity3d Mecanim动画系统Animator学习笔记
1. unity3d Mecanim学习 Unity3d新版动画系统网上的介绍很多,但多是流水笔记,外人很难看明白,后来我 终于找到介绍的比较明白的两个作者,特别感谢.一个是58开发网的乐天老师,课 ...
- Unity3d 实现鼠标左键点击地形使角色移动到指定地点[脚本]
Unity3d 实现鼠标左键点击地形使角色移动到指定地点[脚本] 2013-02-19 15:29:33 我来说两句 作者:nnsword 收藏 我要投稿 其中涉及,移动速度, ...
- Spring整合Shiro 权限 角色 用户关系分析
Spring整合Shiro 权限 角色 用户关系分析 作者 : Stanley 罗昊 [转载请注明出处和署名,谢谢!] 前置内容 之前我们学习了,使用注解的方式去完成权限的控制,当然,也是静态的,也就 ...
- Unity3D Mecanim 动画系统骨骼动画问题解决方法
http://7dot9.com/2014/08/16/unity3d-mecanim%E5%8A%A8%E7%94%BB%E7%B3%BB%E7%BB%9F%E9%AA%A8%E9%AA%BC%E5 ...
- Unity3D笔记 英保通六 角色控制器
一.角色控制器 U3D有两种角色控制方式:Rigidbody刚体.角色控制器组件(胶囊体组件) 面试的题目中经常会遇到这个问题: CharacterController和Rigidbody的区别? 这 ...
- 【日常记录】【unity3d】 2D跳跃过快导致角色某帧陷入地面
如果角色运动过快会导致嵌入地面再反弹出来 : 可以使用更高质量的检测方式 "Continuous" :就可以解决这个问题
- unity3d camera.culling mask
原地址:http://www.cnblogs.com/88999660/archive/2013/03/14/2959439.html 官方文档对CullingMask的注释只是说了通过位移运算符,可 ...
- Unity3D安卓打包参数配置与兼容性的关系分析
前言 在使用Unity3D工程导出安卓安装包的时候,往往会遇到兼容性的问题,针对某些机型,要么无法打开游戏,要么会出现卡机的现象.面对这种情况,我们可以调节相关的参数来提高兼容性. 为了了解在打包时候 ...
- Yii中 RBAC(基于角色的访问控制权限)表结构原理分析
这里有几个概念很重要,我简单用大白话说一下; 权限:就是指用户是否可以执行哪些操作. 如:小张可以发帖.回帖.浏览,小红只能回帖.浏览 角色:就是上面说的一组操作的集合. 如:高级会员有发帖.回帖.删 ...
随机推荐
- 录制iPhone屏幕并转成gif方案
app的开发经常会碰到需要演示一个交互,或者一个bug的情况,通常涉及一连串的操作以及操作的反馈,这是文字,或截图都无法表达的,视频的话还得播放器参与,最好的一个想法应该是录制屏幕然后再转成gif图片 ...
- difference between TotalFreeSpace and AvailableFreeSpace
Refer:http://stackoverflow.com/questions/7275806/what-is-the-difference-between-totalfreespace-and-a ...
- Java如何取得当前程序部署的服务器的IP
1.问题:之前使用InetAddress.getLocalHost().getHostAddress()时,在开发机测试可以得到192.168.0.18这样的IP.但部署到linux服务器以后, 这个 ...
- mysql中显示当前数据库下的所有表,包括视图。
环境说明: mysql版本:5.5.57-log 操作系统:Red Hat Enterprise Linux Server release 6.6 (Santiago) 需求:查看当前数据库下所有的表 ...
- JS三种简单排序算法
冒泡排序:最简单.最慢.长度小于7的时候最优 插入排序:比冒泡要快比快速排序和希尔排序慢,数据量小的时候优势大 快速排序:速度很快 //js利用systemSort进行排序 systemSort: ...
- Eclipse cdt解决github导入的项目无法打开声明的bug (cannot open declaration)
概述: 我利用eclipse 的git插件clone github上的远程项目(C++)到本地时遇到一个问题:clone下来的项目没有C++特性,无法使用open declaration等操作,下面是 ...
- iOS开发--改变tableHeaderView的高度
1.先获取tableHeaderView 2.设置它的frame 3.将该view设置回tableview UIView *view=tableView. tableHeaderView; view. ...
- Win10 取消桌面快捷键图标
新建文本文档 --- 写入如下内容 --- 改名为 .bat 并运行 @echo off color 2 reg delete HKCR\lnkfile /v IsShortcut /f reg de ...
- solr java demo 基础入门
<!--solr的maven依赖--> <dependencies> <dependency> <groupId>org.apache.solr&l ...
- HTML5和CSS3扁平化风格博客(基础篇)
多学一点总是好的~ 自始至终都觉得的css和html效果比较美观,于是在看慕课网教程时,自己也跟着敲了深爱着的前端代码 这部分分为两部分:①基础篇:http://www.imooc.com/learn ...