单例模式(自动加载)

目录

介绍

使用

在脚本中写一个函数

让一个「自定义场景」作为单例「自动加载」


介绍

  • 单例模式是编程中的一种设计思想,是为了解决某些编程语言中没有全局变量概念而产生的
  • 这对于实现某种模块非常好用
    • 比如玩家信息,有时候,游戏中的很多地方都需要获取玩家信息,使用单例模式实现全局变量可以很方便地让程序中的所有代码都可以访问到

使用

  • 「自动加载」页面可以选定「自动加载项」

  • 「自动加载项」可以是一个继承自Node或者其他节点类的脚本,也可以是一个场景
  • 当添加一个「自动加载单例」后,运行游戏时「场景树」 下会自动生成这个脚本或场景的「实例」
  1. 新建「AutoLoad」文件夹

  1. 新建「MyAutoLoadScript」脚本

  1. 添加这个脚本作为「自动加载单例」

在脚本中写一个函数

  1. 在脚本中写一个函数
  2. 然后,在游戏「主场景根节点」脚本代码中调用这个单例内的函数

  • 运行后成功被调用

  1. 点击「场景树」的「远程」窗口,发现「节点树」根节点下,除了我们的主场景「Node2D」外,还多了单例节点

这就是「自动加载项」的作用,不需要我们手动「实例化」节点,并添加节点到「场景树」

让一个「自定义场景」作为单例「自动加载」

  1. 右键「文件系统」创建一个「场景资产」

  1. 创建好场景后,布置场景

  1. 在「自动加载」页面添加这个场景作为「单例」

  • 这个「场景」被「实例化」到了「节点树」根节点中
相关推荐
CSDN_PBB4 小时前
[STM32 - 野火] - - - 固件库学习笔记 - - - 十五.设置FLASH的读写保护及解除
笔记·stm32·学习
夜流冰9 小时前
编程参考 - C语言可变参数
笔记
格雷亚赛克斯9 小时前
Qt笔记31-69
数据库·笔记·qt
Long_poem9 小时前
【自学笔记】版本控制与持续集成基础知识点总览-持续更新
笔记·ci/cd
Stream٩( 'ω' )و10 小时前
109~133笔记
笔记
weixin_5025398510 小时前
rust学习笔记2-rust的包管理工具Cargo使用
笔记·学习·rust
孤独得猿11 小时前
排序算法复习——包括插入排序、希尔排序、冒泡排序、快排(包括霍尔法、挖坑法、快慢指针法)、堆排、选择排序、归并排序等 (代码采用c/c++混编)
c语言·数据结构·c++·笔记·算法·排序算法
19999er12 小时前
框架&ThinkPHP(小迪网络安全笔记~
开发语言·笔记·安全·web安全·php
web_1553427465613 小时前
【合集】Java进阶——Java深入学习的笔记汇总 & 再论面向对象、数据结构和算法、JVM底层、多线程、类加载、
java·笔记·学习
rellvera13 小时前
【强化学习的数学原理】第08课-值函数近似-笔记
笔记