Unity单例笔记

单例分类

根据管理器的生命周期,可以分为整个游戏内存在的和场景内存在的。根据是否需要检查器或协程,得到是否必须继承MonoBehavior,可以分为继承和不继承。这两个问题组合,其中不继承MonoBehavior的一定整个游戏存在。这样就把管理器分为3类:

  1. 不继承MonoBehavior;
  2. 继承MonoBehavior;
  3. 继承MonoBehavior且DontDestroyOnLoad;

继承MonoBehavior且DontDestroyOnLoad如何防止出现多个

看单例是手拖进场景还是代码创建。

手拖则进入场景时如果已经有单例则多余的把自己销毁。

代码创建可以天然防止这个问题。

编辑器、未播放状态调用到单例时单例对象存在但instance没赋值

cs 复制代码
instance= FindObjectOfType<T>();

找一下。

相关推荐
牛哇网络工作室10 小时前
UnityHDRP写实数字人全流程基础5—语音输入和语音识别
android·unity·c#·游戏引擎·aigc·语音识别·xcode
ellis197021 小时前
u3d插件xLua[九]例8 Hotfix
unity
淡海水21 小时前
01-07-运行时-GC深度剖析-内存分配回收与结构选择
jvm·windows·unity·gc
优梦创客1 天前
游戏开发架构选型:第1篇|什么是架构?从进球事件看 MVC 的局限
unity·架构·游戏引擎·游戏开发
zhangphil2 天前
Unity3D(Unity)跨平台游戏引擎简介
unity
Madokaly2 天前
DOTween动画:TweenManager深度解析
unity
_ZHOURUI_H_3 天前
Unity TCP底层极限拆解:粘包、半包、CRC、序列号、双缓冲到底怎么一起工作的?
网络·网络协议·tcp/ip·游戏·unity·游戏引擎·游戏开发
KindSuper_liu3 天前
Unity 游戏网络基础:从 TCP、UDP 到 HTTP、TLS 与 Best HTTP
网络·游戏·unity
qq_170264753 天前
unity里GameObject和Texture的内存归属
java·unity·游戏引擎
weixin_404679313 天前
godot + vscode ai开发
ide·vscode·编辑器·游戏引擎·godot