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(基于角色的访问控制权限)表结构原理分析
这里有几个概念很重要,我简单用大白话说一下; 权限:就是指用户是否可以执行哪些操作. 如:小张可以发帖.回帖.浏览,小红只能回帖.浏览 角色:就是上面说的一组操作的集合. 如:高级会员有发帖.回帖.删 ...
随机推荐
- 常用Dos(转)
先介绍一下通配符的概念. 通配符*和? *表示一个字符串 ?只代表一个字符 注意通配符只能通配文件名或扩展名,不能全都表示.例如我们要查找以字母y开头的所有文件,可以输入以下命令:dir y*.*:如 ...
- Specified key was too long; max key length is 1000 bytes问题解决
今天使用帆软的报表平台管理,进行外接数据库配置,尝试多次一直提示数据导入失败 java的报错 com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorExcep ...
- 关于测试中哪些信息需要放到jira上面
1.每个新需求的功能点,全部在jira上一一呈现 2.每个bug也一样在jira上一一呈现 3.任务一个需要优化改进的点也一一在jira上呈现 然后程序员一直开发新功能和修改新bug,测试人员负责bu ...
- Nginx: error while loading shared libraries: libpcre.so.1解决
Shell代码 [root@tmsapp65 conf]# /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx: error while l ...
- Java 流(Stream)、文件(File)和IO -- Java ByteArrayInputStream类
字节数组输入流在内存中创建一个字节数组缓冲区,从输入流读取的数据保存在该字节数组缓冲区中.创建字节数组输入流对象有以下几种方式. 接收字节数组作为参数创建: ByteArrayInputStream ...
- ios开发之--tableview刷新某一个区和某一行
在开发中,有时候,我们不需要刷新整个表,只需要刷新局部数据即可,具体代码如下: //section刷新 NSIndexSet *indexSet=[[NSIndexSet alloc]initWith ...
- __stdcall __cdecl 引起的程序崩溃
崩溃弹出的截图如下 看到0xC0000005, 访问冲突的问题, 九成九是内存访问违规, 比如访问了已经释放的指针, 又或者是离开函数时栈被破坏之类. 找了一下午一直没有头绪, 好在有一份可以执行的源 ...
- iOS 解决UIScrollView布局问题(布局受statusBar和NavigationBar影响)
iOS APP中有一个非常好用的功能,那就是当我们在滚动一个UIScrollView滚动了很远很远的时候,假如我们想让UIScrollView回到顶部,我们绝大多数人的做法就是慢慢慢慢的滚动UIScr ...
- My Apple Developer Library Catalog
Objective-C & Memory Management:Programming with Objective-CConcepts in Objective-C ProgrammingM ...
- GreenPlum数据加载
1. copy命令 对于数据加载,GreenPlum数据库提供copy工具,copy工具源于PostgreSQL数据库,copy命令支持文件与表之间的数据加载和表对文件的数据卸载.使用copy命令进行 ...