纳金网
标题:
Unity3d角色换装原理简介
[打印本页]
作者:
晃晃
时间:
2011-9-5 08:07
标题:
Unity3d角色换装原理简介
在换装前,我先讲讲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();
作者:
Asen
时间:
2011-9-7 08:35
简单
作者:
菜刀吻电线
时间:
2012-1-20 23:24
今年过年不收礼,收礼只收你短信,祝福不分大小,只要真心我就要。条数越多我越高兴,手机越响我越开心,你可否提前把礼送,等礼等得我好心焦。
作者:
晃晃
时间:
2012-2-18 23:26
加精、加亮滴铁子,尤其要多丁页丁页
作者:
晃晃
时间:
2012-3-27 23:32
顶!学习了!阅!
作者:
晃晃
时间:
2012-4-14 23:25
佩服,好多阿 ,哈哈
作者:
菜刀吻电线
时间:
2012-5-14 23:19
谢谢楼主,真是太实用了
作者:
C.R.CAN
时间:
2012-5-23 23:24
很经典,很实用,学习了!
作者:
tc
时间:
2012-10-18 23:25
“再次路过……”我造一个-----特别路过
作者:
tc
时间:
2013-2-19 23:31
“再次路过……”我造一个-----特别路过
作者:
晃晃
时间:
2013-2-24 23:29
先顶上去,偶要高亮加精鸟!
欢迎光临 纳金网 (http://go.narkii.com/club/)
Powered by Discuz! X2.5