unity使用二段构建的方式动态加载模型
技术:unity + c#
概述
经历过各种UNITY的游戏开发项目,分享一下最喜欢的一种在游戏中创建模型的方式,这是从以前开发cocos2dx的时候就一直喜欢的方式,把new分配内存空间和init初始化两个过程分开。解压文件后把CreateModel.unitypackage拖拽如Unity中即可
详细
运行效果
实现过程
这里主要是为了说明二段构造模式
public class Model : MonoBehaviour { public static Model Create(string resPath) { GameObject obj = new GameObject("Model"); Model model = obj.AddComponent<Model>(); if(obj && model && model.Init(resPath)) { return model; } return null; } bool Init(string resPath) { GameObject obj = ResourceManager.Single.LoadOjb(resPath); if(obj) { obj.transform.SetParent(transform); obj.GetComponent<Transform>().localPosition = new Vector3(0, 0, 0); return true; } return false; } void Start() { } // Update is called once per frame void Update() { } }
使用Resources.Load加载模型资源:
public GameObject LoadOjb(string objPath) { GameObject Prefab = (GameObject)Resources.Load(objPath); return Instantiate(Prefab); }
项目结构图
本实例支付的费用只是购买源码的费用,如有疑问欢迎在文末留言交流,如需作者在线代码指导、定制等,在作者开启付费服务后,可以点击“购买服务”进行实时联系,请知悉,谢谢
手机上随时阅读、收藏该文章 ?请扫下方二维码