【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.

相关推荐
2501_9307077812 分钟前
使用C#代码在 Word 中删除页眉或页脚
开发语言·c#·word
警醒与鞭策24 分钟前
大模型对比
unity·性能优化·c#·游戏引擎·cursor
数据库知识分享者小北24 分钟前
从极速复制“死了么”APP,看AI编程时代的技术选型
数据库·阿里云·状态模式·ai编程·supabase
点云SLAM24 分钟前
C++依赖注入(Dependency Injection DI)vs单例设计模式(Singleton)
开发语言·c++·单例模式·设计模式·日志配置·依赖注入di·大项目系统
Geoking.28 分钟前
【设计模式】责任链模式(Chain of Responsibility)详解
java·设计模式·责任链模式
一只爱做笔记的码农40 分钟前
【C#】如何把资源打包成zip压缩包,内嵌进程序中,然后程序可以直接用代码进行访问,无需解压
开发语言·c#
桃子叔叔1 小时前
react-wavesurfer录音组件2:前端如何处理后端返回的仅Blob字段
前端·react.js·状态模式
m5655bj1 小时前
使用 C# 将 PPT 转换为 PDF
pdf·c#·powerpoint
WarPigs1 小时前
switch和硬编码字典的等效性
unity·c#
不绝1911 小时前
C#进阶:协程与事件
开发语言·c#