Unity3D手游开发日记(11) - 基于共享骨骼简单高效的换装方案

本文介绍了Unity3D手游开发中换装的两种常见方法——骨骼挂接和共享骨骼,重点讲解了如何使用共享骨骼实现高效换装。通过将部件模型的骨骼与主模型骨骼共享,实现只需播放主模型动画即可让部件跟随运动。文中还提到Unity引擎没有提供直接的共享骨骼功能,但可以通过自定义函数模拟实现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

游戏的换装,一般分为3种.换材质,骨骼挂接,共享骨骼.用的比较多的是骨骼挂接和共享骨骼.

1.骨骼挂接

没有动作的骨骼挂接,适合武器.

有动作的骨骼挂接,适合坐骑.

2.共享骨骼

共享骨骼,适合身体部件.主模型(身体)包含整个骨骼,部件模型只包含自己部分的骨骼,应用的时候,部件模型的骨骼共享主模型的骨骼.这样的话,只需要播放主模型的动画,部件会跟着动.

Unity的换装呢,你要百度一下,能搜出一堆文章,方法也是多种多样.有参考价值的却不多.

比如主流推荐的官方demo提供的换装方式.合并mesh,多此一举又麻烦.

比如avatar的方式 ...不适合Legacy动画

其实用以前端游的方式,共享骨骼就行了,Ogre引擎直接提供函数OGRE::shareSkeletonInstanceWith()来实现.而Unity引擎没有这个函数,怎么办呢,自己写一个呗.命名我也取一样的,表示对Unity自己不封装这个函数的鄙视.

        // 共享骨骼
        public static void ShareSkeletonInstanceWith(SkinnedMeshRenderer selfSkin, GameObject target)
        {
     
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值