前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Unity 3D Avatar换装系统

Unity 3D Avatar换装系统

作者头像
py3study
发布2020-01-07 16:00:54
2.6K0
发布2020-01-07 16:00:54
举报
文章被收录于专栏:python3python3

   游戏中的换装系统一直是游戏中不可或缺的一部分,在Unity中如何去实现换装?换装需要注意哪些问题?接下来我们就上面两个问题展开讨论。

   换装主要分为两种类型,一种类型是对于静态模型的换装,就是直接将身体需要换的Mesh更换即可。另一种类型是对于动态的,有动作的模型的换装。对于前者换好装以后,如果模型运动就会出现错位或者方向不对的情况,而后者正好弥补了这种情况的发生。所以我们主要是针对后者进行的Avatar换装。

  换装的实现效果图:

wKioL1Sqm9uh8oicAAE-_7UdjHM140.jpg
wKioL1Sqm9uh8oicAAE-_7UdjHM140.jpg
wKiom1Sqmx7h4cJrAAE3ZeNAccA254.jpg
wKiom1Sqmx7h4cJrAAE3ZeNAccA254.jpg

以上是在模型的运动过程中把裤子进行了更换。其他的也是一样处理的。

那Avatar换装的原理是什么?

第一、需要一套运动的骨架。

第二、需要换装的各部分Mesh。

需要把各部分的Mesh绑定到骨架上,在骨架的运动过程中,绑定在上面的Mesh会一起跟随运动。

各部分的Mesh在unity中展示的效果如下图:

wKiom1Sqm7vwB65-AACoifhvxNA015.jpg
wKiom1Sqm7vwB65-AACoifhvxNA015.jpg

上图是我们需要更换的模型是两套比如head-001和head-003,就是对应的两套Mesh需要相互替换.

我们还需要一套动作骨架,这个在Unity中是无法看到的,我们就不展示了。

接下来是代码实现:

第一步是加载需要更换的各部分Mesh

wKioL1SqnVaxS8lZAAFUblcZNM8731.jpg
wKioL1SqnVaxS8lZAAFUblcZNM8731.jpg

第二步是加载需要绑定Mesh的骨架:

wKioL1SqnjiyMFx0AAEY090_JZI376.jpg
wKioL1SqnjiyMFx0AAEY090_JZI376.jpg

这样我们就完成了换装,运用一套骨架,可以绑定多个Avatar,效果如下所示:

wKioL1SqnyTzi7lOAAIU0Gk3euU192.jpg
wKioL1SqnyTzi7lOAAIU0Gk3euU192.jpg

是不是很简单?

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-09-15 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档