Unity SkinnedMesh :
游戏中常见的换装做法 :
一、直接更换贴图
二、更换静态Mesh
三、更换SkinnedMesh
前两者简单,今天需要mark下SkinnedMesh。
1.首先可以了解下SkinnedMesh的基础概念 : http://blog.youkuaiyun.com/gamemonkey/article/details/44058291 这篇文章对于入门的同学很不错。
2.Untiy中合并Mesh主要使用到了CombineMeshes接口,接下来就是可以参考Unity文档 :
https://docs.unity3d.com/ScriptReference/Mesh.CombineMeshes.html
3.再来就是实例,可以在AssetsStore中搜索Skinned Mesh官方示例 :
Character Customization
注意:
a.Unity5版本以后,代码和AseetBundle有不兼容的的地方,这个我有做修改。
b.AssetBundle需要重新生成。
运行:
打开Scene:CharacterCustomization / DressingroomExample.scene
AssetBundle生成方式:
①.选中Project视图->Assets->CharacterCustomization文件夹。
②.工具栏->Character Generator->CreateAssetbundles。
4..这个工程是采用assetbundle为基础写的。所以对于部分基友们可能会造成困扰,我们需要的其实紧紧是了解SkinnedMesh实现方式,所以我写了一个直接只用Prefab的小用例在里面,这样就只使用到了下面两个C#文件和它的资源,其余无关的逻辑和框架统统可以摒弃。
运行:
打开Scene:CharacterCustomization / SkinMesh.scene
Prefab生成方式:
①.选中Project视图->Assets->CharacterCustomization文件夹。
②.工具栏->Character Generator->CreatePrefabs。
修改后的Unity工程可以去这里下载:http://download.youkuaiyun.com/detail/zhousanxi123/9659635
以下是Prefab使用SkinnedMesh的两个主要文件 :
using System.Colle