Unity单例笔记

单例分类

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

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

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

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

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

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

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

先

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

找一下。

相关推荐
小贺儿开发10 小时前
《流光绘忆》Unity 沉浸式光影互动
科技·unity·ai·程序员·工具·互动·光影
Aman198414 小时前
Claude Code做Unity项目移植(一):从零散工具到团队式
unity·游戏开发·vibe coding·claude code·项目迁移
地狱为王16 小时前
Unity使用VoxLock实现语音隔离
unity·游戏引擎·音频处理·voxlock
Jmyd012319 小时前
博物馆数字展厅系统架构设计:实景采集到云渲染全链路
unity·系统架构·博物馆·数字展厅·博物馆数字化
解决小子19 小时前
【虚幻引擎】【GAS】模块详解
游戏引擎·虚幻·gas
一只大鸽子20 小时前
游戏开发笔记0-Godot启动
笔记·游戏引擎·godot
weixin_424294671 天前
对于未加入 Script Execution Order 的脚本
unity
暴走约伯1 天前
【VFX工具链源码拆解 03】告别机械劳动(下):材质字典映射批处理与智能纹理槽识别
unity·游戏引擎·材质
Wanda12141 天前
机器人与机电一体化3D数字孪生机器-Day9
人工智能·3d·unity·机器人·数字孪生
暴走约伯1 天前
【VFX工具链源码拆解 01】总体架构:大型项目特效流程的程序化落地
开发语言·经验分享·3d·unity·架构·游戏引擎