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

相关推荐
空中海3 小时前
第二篇:Unity中级阶段(核心开发能力)
unity·游戏引擎
北京理工大学软件工程5 小时前
C#111
开发语言·c#
DaLiangChen9 小时前
Unity 实用工具:动态绘制物体边界包围盒(支持屏幕固定线宽)
unity·游戏引擎
张老师带你学9 小时前
Unity 食物 农产品相关
科技·游戏·unity·游戏引擎·模型
mxwin9 小时前
Unity Custom Interpolators与半透明阴影的原理与实战
unity·游戏引擎·shader
晴夏。10 小时前
UE5第三人称模板实现及相关引擎源码分析
unity·ue5·游戏引擎·ue
z小天才b11 小时前
Java 设计模式完全指南:从入门到精通
java·开发语言·设计模式
kyriewen1111 小时前
Next.js:让你的React应用从“裸奔”到“穿衣服”
开发语言·前端·javascript·react.js·设计模式·ecmascript
雪飞鸿11 小时前
ArrayPoolWrapper简洁、安全的ArrayPool
c#·.net·.net core·原创