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

相关推荐
yi碗汤园3 小时前
MQTT消息队列遥测传输协议
网络·网络协议·unity
tang_04275 小时前
【Hi.Ltd 专题】第7期:Threading 采集线程、锁与 LRU 缓存
经验分享·c#·hi.ltd系列
A_nanda5 小时前
C# 界面卡顿:从定位到根治
c#
2501_930707787 小时前
使用C#代码为新创建的 Word 文档创建目录
c#·word
林川~017 小时前
Unity 常用 API 与核心类全解:从生命周期到协程,附性能避坑清单(Unity 6 适配)
unity·游戏引擎·常用api
czhc11400756638 小时前
同一个数,两把尺子:六组“看着一样、其实不一样“
c#
sensen_kiss8 小时前
CPT306 Coursework 1 个人游戏作业——坦克大战
unity·游戏程序·游戏策划
花北城8 小时前
【C#底层库】access_token授权鉴权验证
c#·鉴权·token·授权
蒸鱼Yuzheng9 小时前
Unity 与 Unreal 测试工具怎么回答:Profiler、日志、自动化与证据链
测试工具·unity·性能分析·游戏测试·unrealengine
rick9779 小时前
C# 动态代理与 DispatchProxy:从原理到实战的完整指南
c#