0. 背景
单例模式非常常见,在各种语言上都能见到,用处也十分广泛,前一篇文章有讲到python的两种单例模式。当然Unity中组件的单例模式用途也很广,例如游戏中各种Manager, 使用StartCoroutine, GetComponent等方法的单例,本文简要讲述一下Unity中对于组件的单例模式如何构建。
1. 相同之处
首先既然是单例模式,也就符合单例的一些既定规则:
- 构造参数为私有;
- 存在static的实例变量名instance;
- 存在static的方法-Instance or GetInstance,以获取instance,若第一次获取instance则需要new一个实例。
2. 不同之处
- 既然是Unity的组件Component,在new组件实例时: 先需要new GameObject, 然后new Component, 并把新建的组件实例挂载到GameObject;
- 当然这个新建的GameObject不能持久化到

本文介绍了Unity中组件的单例模式,强调了它与其他语言单例模式的相同点和不同点,如构造参数私有、实例变量及获取实例的方法。文章详细讲解了在Unity组件实例化过程中的特殊步骤,以及如何避免将单例持久化到场景中。通过提供Singleton基类的代码示例,展示了如何实现和使用Unity组件的单例模式。
最低0.47元/天 解锁文章
4868

被折叠的 条评论
为什么被折叠?



