基于惯性动捕的动画应用解决方案——Unity篇

2023-12-06 07:59

本文主要是介绍基于惯性动捕的动画应用解决方案——Unity篇,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

解决方案流程:
在这里插入图片描述

一、穿戴动捕设备

此教程以VDSuit Full为例,具体穿戴请观看对应的穿戴视频或使用说明。
在这里插入图片描述

图1.1

二、连接设备并进行标定

2.1设备与软件连接
选择VDSuit Full类型,然后点击连接按钮连接软件,如下图2.1-2.2。
在这里插入图片描述

图2.1
在这里插入图片描述

图2.2

2.2标定
连接软件后进行姿态标定,使用前必须根据提示严格依据标定动作进行标定,否则会影响使用的姿态效果。
在这里插入图片描述

图2.3

三、根据需求记录动作数据

3.1点击记录按钮,记录文件的文件属性,下图所示
按钮“灰色”状态时为未记录数据,按钮为“红色”状态时为数据记录中,如下图3.1所示
在这里插入图片描述

图3.1

3.2保存动作数据
再次点击“记录”按钮,按钮由“红色”变为“灰色”时,数据即被保存。
在这里插入图片描述

图3.2

四、导出FBX动捕数据文件

点击数据导出按钮,设置需要导出的数据文件的属性,此处建议直接选择FBX,本教程是基于标准骨骼绑定的模型示范的,导出的步骤如下图4.1-4.2。
在这里插入图片描述

图4.1
在这里插入图片描述

图4.2

五、将模型与数据导入Unity

5.1导入模型到Unity中,并对其设置相关参数。
在Rig 面板中更改 Animation Type 为 Humanoid,Avatar Definition 为 Create From This Model,如下图5.1。
在这里插入图片描述

图5.1

5.1将FBX数据导入Unity中,并对其设置相关参数。
在Rig 面板中更改 Animation Type 为 Humanoid,Avatar Definition 为 Create From This Model,如下图5.2。
在这里插入图片描述

图5.2

六、创建动画控制器Animator Controller

对FBX动捕数据创建动画控制器,并将控制器拖入动画控制面板中,如下图6.1-6.2。
在这里插入图片描述

图6.1
在这里插入图片描述

图6.2

七、预览动画

将动画控制器的拖入场景模型中的动画选项卡中,然后运行即可查看动画效果,如下图7.1-7.2。
在这里插入图片描述

图7.1
在这里插入图片描述

图7.2

八、修改数据骨骼位置

若预览动画的时模型手部的手指姿态不正确,修改FBX数据与模型的骨骼节点的位置,使其一一对应。Unity骨骼标准手指为三节,所以匹配时须注意大拇指外其余四指的三节手指不能匹配在掌心上方(特别注意是FBX数据的匹配),且FBX数据的关节点与模型的关节点要保持一致且都为三节。

8.1匹配模型关节
在这里插入图片描述

图8.1
在这里插入图片描述

图8.2

8.2匹配FBX数据中骨骼位置
在这里插入图片描述

图8.3
在这里插入图片描述

图8.4

九、Unity特效

部分模型头发或裙子若需要飘动等碰撞效果,可添加动力学。V Chan裙子以权重方式实现,所以这里以头发作为示范例子。

9.1给头发添加动力学脚本,并调节相关的参数
在这里插入图片描述

图9.1

9.2对身体或其他关节需要与头发接触的关节添加碰撞体,并设置碰撞体大小等相关参数
在这里插入图片描述

图9.2

这篇关于基于惯性动捕的动画应用解决方案——Unity篇的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/461057

相关文章

部署Vue项目到服务器后404错误的原因及解决方案

《部署Vue项目到服务器后404错误的原因及解决方案》文章介绍了Vue项目部署步骤以及404错误的解决方案,部署步骤包括构建项目、上传文件、配置Web服务器、重启Nginx和访问域名,404错误通常是... 目录一、vue项目部署步骤二、404错误原因及解决方案错误场景原因分析解决方案一、Vue项目部署步骤

在MySQL执行UPDATE语句时遇到的错误1175的解决方案

《在MySQL执行UPDATE语句时遇到的错误1175的解决方案》MySQL安全更新模式(SafeUpdateMode)限制了UPDATE和DELETE操作,要求使用WHERE子句时必须基于主键或索引... mysql 中遇到的 Error Code: 1175 是由于启用了 安全更新模式(Safe Upd

Python安装时常见报错以及解决方案

《Python安装时常见报错以及解决方案》:本文主要介绍在安装Python、配置环境变量、使用pip以及运行Python脚本时常见的错误及其解决方案,文中介绍的非常详细,需要的朋友可以参考下... 目录一、安装 python 时常见报错及解决方案(一)安装包下载失败(二)权限不足二、配置环境变量时常见报错及

Java下载文件中文文件名乱码的解决方案(文件名包含很多%)

《Java下载文件中文文件名乱码的解决方案(文件名包含很多%)》Java下载文件时,文件名中文乱码问题通常是由于编码不正确导致的,使用`URLEncoder.encode(filepath,UTF-8... 目录Java下载文件中文文件名乱码问题一般情况下,大家都是这样为了解决这个问题最终解决总结Java下

Idea实现接口的方法上无法添加@Override注解的解决方案

《Idea实现接口的方法上无法添加@Override注解的解决方案》文章介绍了在IDEA中实现接口方法时无法添加@Override注解的问题及其解决方法,主要步骤包括更改项目结构中的Languagel... 目录Idea实现接China编程口的方法上无法添加@javascriptOverride注解错误原因解决方

MYSQL事务死锁问题排查及解决方案

《MYSQL事务死锁问题排查及解决方案》:本文主要介绍Java服务报错日志的情况,并通过一系列排查和优化措施,最终发现并解决了服务假死的问题,文中通过代码介绍的非常详细,需要的朋友可以参考下... 目录问题现象推测 1 - 客户端无错误重试配置推测 2 - 客户端超时时间过短推测 3 - mysql 版本问

Android kotlin语言实现删除文件的解决方案

《Androidkotlin语言实现删除文件的解决方案》:本文主要介绍Androidkotlin语言实现删除文件的解决方案,在项目开发过程中,尤其是需要跨平台协作的项目,那么删除用户指定的文件的... 目录一、前言二、适用环境三、模板内容1.权限申请2.Activity中的模板一、前言在项目开发过程中,尤

Linux内存泄露的原因排查和解决方案(内存管理方法)

《Linux内存泄露的原因排查和解决方案(内存管理方法)》文章主要介绍了运维团队在Linux处理LB服务内存暴涨、内存报警问题的过程,从发现问题、排查原因到制定解决方案,并从中学习了Linux内存管理... 目录一、问题二、排查过程三、解决方案四、内存管理方法1)linux内存寻址2)Linux分页机制3)

5分钟获取deepseek api并搭建简易问答应用

《5分钟获取deepseekapi并搭建简易问答应用》本文主要介绍了5分钟获取deepseekapi并搭建简易问答应用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需... 目录1、获取api2、获取base_url和chat_model3、配置模型参数方法一:终端中临时将加

IDEA运行spring项目时,控制台未出现的解决方案

《IDEA运行spring项目时,控制台未出现的解决方案》文章总结了在使用IDEA运行代码时,控制台未出现的问题和解决方案,问题可能是由于点击图标或重启IDEA后控制台仍未显示,解决方案提供了解决方法... 目录问题分析解决方案总结问题js使用IDEA,点击运行按钮,运行结束,但控制台未出现http://