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

相关推荐
jtymyxmz2 小时前
《Unity Shader》6.4.3 半兰伯特模型
unity·游戏引擎
用户8356290780512 小时前
C# 自动化生成 PowerPoint 演示文稿
后端·c#
饮品爱好者3 小时前
[C#] NO.4 我的第一个项目
vscode·职场和发展·c#·github
我的golang之路果然有问题3 小时前
mac配置 unity+vscode的坑
开发语言·笔记·vscode·macos·unity·游戏引擎
于小汐在咯4 小时前
【虚拟现实技术】在Unity里创建一个简单的AR项目
unity·ar·vr
专注VB编程开发20年5 小时前
.net按地址动态调用VC++DLL将非托管DLL中的函数地址转换为.NET可调用的委托
开发语言·c++·c#·.net
玩泥巴的7 小时前
.NET驾驭Excel之力:工作簿与工作表操作基础
c#·excel·二次开发·office·com互操作
czhc11400756637 小时前
C# 1116 流程控制 常量
开发语言·c#
颜酱7 小时前
理解编程的设计原则(前端角度)
设计模式
葛小白17 小时前
C#进阶12:C#全局路径规划算法_Dijkstra
算法·c#·dijkstra算法