纳金网
标题:
角色换装原理简介
[打印本页]
作者:
狂风大尉
时间:
2014-5-22 07:03
标题:
角色换装原理简介
在换装前,我先讲讲WWW的相关事宜。
c#里用WWW去读取资源时,需要用到迭代器IEnumerator和 MonoBehaviour的StartCoroutine方法。
这是在MONO下开线程来读取资源的一种方法。
在读取资源前,我们必须先建立资源。这种资源建立的方法,需要用到
unity3d
里EDIT的API,对指定资源进行打包处理。
if (BuildPipeline.BuildAssetBundle(o, null, pathd, BuildAssetBundleOptions.CollectDependencies))
{
Debug.Log("create assetBundle [" + pathd + "] BINGO!");
} else {
Debug.Log("create assetBundle [" + pathd + "] ERROR!!!");
}
最后,懂得以上启蒙知识后就可以对人物模型进行换装了。
对一个人物模型里的个别模块换装,可分为:
材质更换,
模型更换,
和骨架更换。
就像下面这段程序那样。
在得到人物SkinnedMeshRenderer后,
对它的模型进行更换,
对其骨架进行更换,
最后对其材质球进行更换。
如此而已。
此文虽不详尽,但可以帮住你理解在研究换装过程中的种种问题。我的时间不多,写此文,只为帮助大家从本质上理解人物换装原理。
SkinnedMeshRenderer r = root.GetComponent<SkinnedMeshRenderer>();
r.sharedMesh = new Mesh();
r.sharedMesh.CombineMeshes(combineInstances.ToArray(), false, false);
r.bones = bones.ToArray();
r.materials = materials.ToArray();
作者:
Mr_X
时间:
2014-5-22 07:18
一大早就分享经验,楼主辛苦了,谢谢
作者:
hyui
时间:
2014-5-22 08:10
Thank you for share with us your experience!
作者:
wucnj
时间:
2014-5-22 08:53
感谢分享!!!
作者:
wucnj
时间:
2014-5-22 21:36
感谢分享!!!
作者:
mandonggua
时间:
2017-6-8 11:17
谢谢分享
作者:
biblioma
时间:
2017-6-9 09:46
谢谢分享
欢迎光临 纳金网 (http://go.narkii.com/club/)
Powered by Discuz! X2.5