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

相关推荐
武藤一雄29 分钟前
深入理解 C# 中的 sizeof 与非托管类型约束
开发语言·windows·c#·.net·.netcore
Thomas.Sir1 小时前
第十四章:基于 FastAPI+Vue3 的智能聊天系统全栈开发实战
vue·状态模式·fastapi·智能
Sator11 小时前
Unity关于射击游戏人物动画的设计经验
游戏·unity·游戏引擎
冰凌糕1 小时前
Unity3D Shader 坐标空间详解
unity
武藤一雄2 小时前
C# 中精准锁定类型信息指南:typeof vs GetType()
开发语言·windows·c#·.net·.netcore
唐青枫2 小时前
C#.NET ConcurrentQueue<T> 深入解析:无锁队列原理、FIFO 语义与使用边界
c#·.net
步步为营DotNet2 小时前
#.NET 11 与C# 14 助力边缘计算应用的安全与性能飞跃
c#·.net·边缘计算
sg_knight11 小时前
设计模式实战:模板方法模式(Template Method)
python·设计模式·模板方法模式
一念春风11 小时前
智能文字识别工具(AI)
开发语言·c#·wpf
爱学习的程序媛12 小时前
【Web前端】JavaScript设计模式全解析
前端·javascript·设计模式·web