编程框架1

文章详细介绍了在游戏编程中如何使用StrangeIoC框架进行资源管理和组件交互。涉及到创建和挂载脚本、3D空间UI设置、音频管理类的初始化、对象池的实现以及本地化处理。此外,还提到了状态机(FSM)的运用和protobufnet序列化与反序列化的操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

游戏编程框架1
导入strangeioc资源包。
创建空物体,挂demo1contextview脚本。
创建command文件夹。
创建脚本scoremodel和iscoreservice,创建脚本scoreservice和cubeview,挂给cube。
在这里插入图片描述

把canvas做成3D空间,父物体给cube。
3D空间UI要把主摄像机给到canvas的event camera。
创建cubemediator脚本。
创建脚本requestscore。
创建脚本demo1commandevent。
创建脚本demo1serviceevent。
创建脚本demo1mediatorevent。
在这里插入图片描述

十分注意监听和派发的顺序。
在这里插入图片描述

这里注意全局和局部派发器的分开使用。

创建framwork文件夹,下面创建Editor。
创建Audio放在resources文件夹下面,里面导入音效。
framwork下面创建resoureces文件夹,里面存放音频文件信息。
framework文件夹下创建scripts文件夹下面创建manager文件夹下创建audiomanager脚本用来管理。
但是由于窗口会变成一条直线,所以直接用的写好的代码。
在这里插入图片描述

在context里面进行一层audiomanager的绑定。
在这里插入图片描述

在这里进行音频管理类的注入和初始化。在audiomanager前面加public,
在这里插入图片描述

在cubeview里面注入类和播放声音。

创建对象池列表的方法,在manager里面点create config,
在这里插入图片描述

然后可以把预制件拖过去,设置参数。
名字要和预制件的名称一样。
也可以把特效拖过去。
framework下面的scripts文件夹下面创建pool把对象池的脚本放进去。
在这里插入图片描述

poolmanager使用传统的单例模式,如果用stangleioc绑定单例的话,频繁调用会频繁注入,耗费大量性能。poolmanager里面写init方法,在startcommand的execute里面调用。
在这里插入图片描述
在这里插入图片描述

在cubeview里面调用实例化预制件,点击左键即可创建。当物体被禁用后再次点击会启用禁用的物体。
可以给预制件挂一个脚本,用来控制他的存在时间
在这里插入图片描述

framework-resources下面创建localization文件夹用来本地化。
在这个文件夹里面用文件管理器创建两个txt,分别是chinese和english。
创建两个按钮,分别是开始和退出。
为了在编辑器中显示文本文件的中文,在vs的文件-高级保存选项里(自己搜索添加)选择UTF8。
在这里插入图片描述

在startcommand里进行本地化管理脚本的初始化。
给按钮的text挂上localizationtext脚本,给上key。
如果要切换中英文版本的话,直接在localizationmanager里面修改string language。
文本文件里只需要左边写通用key,右边写对应语言的value。
fwork-scripts下面创建文件夹FSM?。
创建两个胶囊提,分别命名为player和npc,添加刚体,冻结x. z轴旋转。
给npc挂上NPCcontrol脚本,放在外界的scripts文件夹里面。
创建空物体,作为路径点,给到npc control。
给player标签,然后在npccontrol里面获取。
在这里插入图片描述

把protobuf net里面的dll导入到frwork-plugins里面
创建文件夹protobufnet
把testprobuf挂给空物体,即可在asset目录下生成user文件,需要刷新。
testprotobuf脚本里面写的是序列化过程
在这里插入图片描述

这个是反序列化过程。就是把二进制读取成字节的过程。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值