Unity单例笔记

单例分类

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

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

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

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

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

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

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

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

找一下。

相关推荐
mxwin1 天前
Unity URP 半透明阴影的局限性
unity·游戏引擎
空中海1 天前
第四篇:Unity高级阶段(架构级开发能力)
unity·架构·游戏引擎
小贺儿开发1 天前
【MediaPipe】Unity3D 虚拟面具互动演示
unity·人机交互·shader·摄像头·面具·互动·脸部捕捉
DaLiangChen1 天前
Unity URP 绘制参考网格 Shader 教程(抗锯齿 + 渐变淡出)
unity·游戏引擎
空中海2 天前
第三篇:Unity进阶阶段(商业项目能力)
unity·游戏引擎
Yuk丶2 天前
Procedural Dialogue Engine - UE4程序化对话系统的技术实现
c++·游戏引擎·ue4·游戏程序·虚幻
RReality2 天前
【Unity Shader URP】屏幕空间扭曲后处理(Screen Space Distortion)实战教程
ui·unity·游戏引擎·图形渲染·材质
zcc8580797622 天前
Unity 事件驱动架构
unity
心之所向,自强不息2 天前
VSCode + EmmyLua 调试 Unity Lua(最简接入 + 不阻塞运行版)
vscode·unity·lua
空中海2 天前
第六篇:Unity专项方向
unity·游戏引擎