测试的代码在点击打开链接https://github.com/summerDun/Sprite3DReskin/,里边是自己根据cocos2d-x 3.7中的示例代码来写的,资源也是,只是添加了自己对这个功能的一些看法.
看了示例代码后,感觉如果遇到商城用点击套装,人物角色可以试穿不同的套装这样的功能就可以实现了.
本身的3D模型在制作的时候也给人物模型添加了各种材质(即衣服啊、鞋子啊、头盔啊什么的),可以让3D的人员制作好,我们可以根据不同套装的款式名称来获取该套装,
cocos2d-x 中Sprite3D用
getMeshByName(),getMeshByIndex()等几个来获取材质的网格(具体的可以自己看Sprite3D这个类),我们可以把同一个部位的材质名称加到一个容器中,一般在商城中或者
已拥有套装的界面都可以通过点击该套装来实现换装效果,在点击的时候可以获得对应的套装的index或者名称就可以实现换装了.
说得不是很清楚,总结一下:
(1)在制作3D模型的时候已经设定好可以更换的部位的材质有几种这样(比如:头发有多少个款式,全都设定好)
(2)在代码中把所有款式的名称加入到一个容器中保存,以便取出.
(3)在一整个套装可以给多个角色使用的时候也可以仿照上边的做法,给每个模型都来那么一个模型..(这可能是比较笨的方法,但是目前的知识不知道其他的做法)。