【Unity23种设计模式】之状态模式

首先创建一个项目

打开项目后复制至3个场景

命名为

创建一个空物体

命名为GameLoop

创建一个脚本GameLoop.cs

编写代码如下

将代码挂载至空物体GameLoop

将三个场景拖拽至Scenes In Build

分析下状态模式的类图

我们创新类图中的代码

编写ISceneState.cs

编写三个状态子类继承构造并赋值

编写SceneStateController.cs

编写GameLoop.cs

状态模式框架搭好后我们在ISceneState.cs

编写GameLoop.cs

编写LoadingState.cs

在场景中创建一个Image命名为Logo

运行即可看见Logo页面的一个从暗淡到显示的变化

运行第1s

运行第2s

接下来继续编写代码LoadingState.cs

在unity场景02UIScene中创建一个button

命名为StartBtn

运行在Loading由隐至显后3秒钟跳转至UIScene场景

第一秒

第二秒

第五秒

编写代码

继续运行项目

点击button后进入GameScene场景

End.

相关推荐
天人合一peng10 小时前
Unity中button 和toggle监听事件函数有无参数
前端·unity·游戏引擎
_乐无11 小时前
Unity加载gly 点云 高斯泼溅渲染
unity
坚定信念,勇往无前11 小时前
unity发布BuildWebGL.wasm 加载过慢
unity·wasm
人工智能AI技术12 小时前
【C#程序员入门AI】本地大模型落地:用Ollama+C#在本地运行Llama 3/Phi-3,无需云端
人工智能·c#
小码过河.13 小时前
设计模式——适配器模式
设计模式·适配器模式
钝挫力PROGRAMER14 小时前
软件工程结构型设计模式
设计模式·软件工程
avi911115 小时前
Unity Data Excel读取方法+踩坑记;和WPS Excel的一些命令
unity·游戏引擎·excel·wps·data
MyBFuture15 小时前
C#数组详解:一维二维与交错数组
开发语言·windows·c#·visual studio·vision pro
老蒋每日coding16 小时前
多智能体系统工作流的设计模式与实现策略
设计模式