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(基于角色的访问控制权限)表结构原理分析
这里有几个概念很重要,我简单用大白话说一下; 权限:就是指用户是否可以执行哪些操作. 如:小张可以发帖.回帖.浏览,小红只能回帖.浏览 角色:就是上面说的一组操作的集合. 如:高级会员有发帖.回帖.删 ...
随机推荐
- 在Lua中计算含中文的字符串的长度
--[[ @desc: 计算字符串字符个数 author:{author} time:-- :: --@inputstr: 源字符串 return 字符个数 ]] function getString ...
- Unity对象池管理
链接: http://www.xuanyusong.com/archives/2925 http://www.xuanyusong.com/archives/2974 https://www.cnbl ...
- Linux下安装或升级Python 2.7
1.准备编译环境gcc 2.去官网下载要安装的对应版本的python的源代码 下载地址:https://www.python.org/downloads/source/ 你可以选择你要下载的版本,用w ...
- js将json数据以csv格式下载
摘要: 最近有一个非项目的小需求,就是将项目开发分工文件化,方便后期管理维护.但是开发时,分工安排都是以json格式记录的,所以就做了一个将json数据以csv格式下载到本地. 代码: <!DO ...
- 关于UIGestureRecognizerState
UIGestureRecognizerState的定义如下 typedef enum { UIGestureRecognizerStatePossible, UIGestureRecognizerSt ...
- SpringBoot------全局异常捕获
1.添加异常类 package myshop.config; import javax.servlet.http.HttpServletRequest; import org.springframew ...
- C#调用外部DLL介绍及使用详解
一. DLL与应用程序 动态链接库(也称为DLL,即为“Dynamic Link Library”的缩写)是Microsoft Windows最重要的组成要素之一,打开Windows系统文件 ...
- 安装eclipse,配置tomcat
1.去官网(https://www.eclipse.org/downloads/download.php?file=/oomph/epp/oxygen/R/eclipse-inst-win64.exe ...
- std::string与std::wstring互相转换
作者:zzandyc来源:CSDN原文:https ://blog.csdn.net/zzandyc/article/details/77540056 版权声明:本文为博主原创文章,转载请附上博文链接 ...
- Android--Led_Demo_APK控制LED灯
下面代码主要实现接口定义,实现从.so库文件接口函数在JAVA里面的声明:package com.friendlyarm.AndroidSDK; import android.util.Log; pu ...