UMA插件专题(一)——基础网格创建
什么是UMA?
UMA,Unity Multipurpose Avatar,是一个开源Avatar创建框架,通过它可以实现自定义人物(或任何生物)的模型,包括换装,改变身材样貌等功能。
现在先从UMA基础网格内容创建开始,将创建一个UMA角色的完整流程走一遍。
那么什么是UMA需要的内容?
使用UMA需要的内容包括以下三个主要方面:基础网格(base meshes),插槽(slots)和覆盖图(overlays)。
- 基础网格
这一部分可以简单分为人物的基本躯干,也就是不穿衣服的网格,以及各个部位的衣服和配饰的网格。

- 插槽
所有提供mesh的UMA内容都是插槽。插槽可以理解为一种容器,用来收纳所有需要组合到UMA avatar的必要資料。比如基础网格通常被分成头,躯干,腿。。。然後以插槽的形式被组合在一起执行。插槽分为基础插槽和衣物插槽。
- 覆盖图
每个插槽需要至少一个覆盖图,但通常会有一个overlay列表。Overlay带有所有用來创建最終材质的贴图并可以有额外的映射信息。列表中的第一個overlay为基础贴图,其它的都被组合到第一个上,按顺序创建最终的图集。
创建UMA新角色的基础网格(不穿衣服)的流程
1.处理缩放问题,添加调整用骨骼(比如在鼻子处加一块骨头)(非导入模型可跳过这一步)
2.在骨骼层级中添加两块额外的骨骼,"Global"和"Position"

3.创建Blendshapes(可选)
4.分割模型并导出
为了处理分割后各个模块接缝处的法线问题,UMA需要我们提供一个unified模型,也就是未被分割的模型来提供处理参考

然后开始分割模型

注意有的模型被分割出来之后不再需要之前的blendshape,需要删掉
以上就是没有附加衣物的基础网格的创建。
衣物以及配饰基础网格的创建
1.导入穿衣服的模型网格,将其和原始模型放在一起,调整比例大小至基本对齐,然后将模型的各部分与 原模型的约束关系取消,建立与新模型的关系,删掉原有的顶点组(vertex groups)。

2.修整模型各部分的形状,删除衣物以外的部分,然后通过调整使衣物网格尽量贴合裸体的人物模型网格


3.选择躯干模型,然后shift选择覆盖在该躯干上的衣物模型,将蒙皮权重转移到衣物模型上。

4.有的蒙皮权重可能需要修改,比如面部配饰如眼镜,为了使不会随着面部表情改变形状,要把权重设置为全部在head骨骼节点上(这样其他骨骼节点的权重就为0)

最后导出模型
UMA插件专题(一)——基础网格创建的更多相关文章
- 雷林鹏分享:jQuery EasyUI 数据网格 - 创建列组合
jQuery EasyUI 数据网格 - 创建列组合 easyui 的数据网格(DataGrid)可以创建列组合,如下所示: 在本实例中,我们使用平面数据来填充数据网格(DataGrid)的数据,并把 ...
- php面试专题---16、MySQL创建高性能索引考点
php面试专题---16.MySQL创建高性能索引考点 一.总结 一句话总结: 注意:只写精品 1.索引的基础? 类似书籍的目录:索引类似于书籍的目录,要想找到一本书的某个特定主题,需要先查找书的目录 ...
- BlazeMeter发布chrome扩展插件,支持JMeter脚本创建
BlazeMeter发布chrome扩展插件,支持JMeter脚本创建http://www.automationqa.com/forum.php?mod=viewthread&tid=3898 ...
- 雷林鹏分享:jQuery EasyUI 数据网格 - 创建复杂工具栏
jQuery EasyUI 数据网格 - 创建复杂工具栏 数据网格(datagrid)的工具栏(toolbar)可以包含按钮及其他组件. 您可以通个一个已存在的 DIV 标签来简单地定义工具栏布局,该 ...
- 雷林鹏分享:jQuery EasyUI 数据网格 - 创建自定义视图
jQuery EasyUI 数据网格 - 创建自定义视图 在不同的情况下,您可能需要为数据网格(datagrid)运用更灵活的布局.对于用户来说,卡片视图(Card View)是个不错的选择.这个工具 ...
- 雷林鹏分享:jQuery EasyUI 数据网格 - 创建页脚摘要
jQuery EasyUI 数据网格 - 创建页脚摘要 在本教程中,我们将向您展示如何在数据网格(datagrid)页脚显示摘要信息行. 为了显示页脚行,您应该设置 showFooter 属性为 tr ...
- 雷林鹏分享:jQuery EasyUI 数据网格 - 创建属性网格
jQuery EasyUI 数据网格 - 创建属性网格 属性网格(property grid)带有一个内置的 expand(展开)/collapse(合并) 按钮,可以简单地为行分组.您可以简单地创建 ...
- 雷林鹏分享:jQuery EasyUI 数据网格 - 创建子网格
jQuery EasyUI 数据网格 - 创建子网格 使用数据网格(datagrid)的详细视图,用户可以展开一行来显示附加的详细信息. 任何内容都可以加载作为行详细,子网格也可以动态加载. 本教程将 ...
- 从零开始实现ASP.NET Core MVC的插件式开发(二) - 如何创建项目模板
标题:从零开始实现ASP.NET Core MVC的插件式开发(二) - 如何创建项目模板 作者:Lamond Lu 地址:https://www.cnblogs.com/lwqlun/p/11155 ...
- java线程基础巩固---创建并启动线程
对于java的并发编程方面的东东,不管是面试还是实际工作开发都是非常重要的,而往往只要涉及到并发相关的东东有点让人觉得有点难,而实际工作中涉及到并发可能就是简单的用下同步块.上锁之类的一些简单的操作, ...
随机推荐
- mybatis原理探究
jdbc数据库运行流程: JDBC有哪三种statement接口: Statement 1.Statement接口提供了执行语句和获取结果的基本方法: 2.Statement继承自Wrapper:3. ...
- css动画-滚动通知
使用动画 <div class="horNotice"> <div class="horMove"> <span>累计87例 ...
- 8. C程序测试用数组个人技巧
在测试程序的时候经常用到用于测试的数组. 这时,数组定义\声明时,最好不要填上元素个数. 当执行某种循环操作(例如将数组中的元素利用循环插入链表中时), 用sizeof(array_name)/siz ...
- 睿爸信奥-【临阵磨枪】练习赛(第一场)- T3
目录 题面 题目背景 输入格式 输出格式 思路 code 题面 题目背景 徐老师很胖,长宽高比例为1:1:1,他每次走路都要滚来滚去~~现在假设在一个平面上有 n 个没有公共点公共点的圆.徐老师要从点 ...
- conda出现Solving environment: failed错误
conda在使用create新建环境和install安装时报错"Solving environment: failed" 报错截图 解决方案 1.在cmd中输入 %HOMEPAT ...
- 统计学习导论(ISLR)(三):线性回归(超详细介绍)
统计学习导论(ISLR) 参考资料: The Elements of Statistical Learning An Introduction to Statistical Learning 统计学习 ...
- spider_requests库简单ip代理
"""使用requests 设置ip代理"""import requestsdef func(): url = 'http://ip.273 ...
- kafka工具的使用-发送数据
1.了解推送数据的是哪个topic,选择对应topic下面的partition分区 2.右侧界面选择Data,并点击『+』号: 3.可选择添加单个消息『add Single Message』或者添加多 ...
- hdu4585 Treap与名次树/STL map(C/C++)
hdu4585 题目地址:https://acm.dingbacode.com/showproblem.php?pid=4585 Shaolin Time Limit: 3000/1000 MS (J ...
- opencv3 7.3 重映射 仿射变换
重映射的概念 将一幅图像某位置的像素放置到另外一幅图像的指定位置上,需要对非整数像素坐标重映射来表达每个像素的新位置. g(x,y)=f(h(x,y)); 实现重映射 remap()函数 dst(x, ...