GameFramework框架详解之 Event事件系统

这篇具有很好参考价值的文章主要介绍了GameFramework框架详解之 Event事件系统。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一.前言

GameFramework是一种基于Unity3D引擎的游戏开发框架,其中包括了强大的事件系统。该系统使用了观察者设计模式,允许游戏对象之间的松耦合通信和交互。
传统的事件系统,一般都是由一个EventManager管理着所有的Event集合,每个Event包括一个EventId+EventHandler。
GameFramework的事件系统,采用了一种更面向对象的注册方法,让代码的结构性更强,耦合降低。
那么它是怎么做到的呢?接下来我们就来剖析一下。

二.传统事件系统

为了更好的让大家理解GameFramework的事件系统,我们先来简单看一个传统的最常用的事件系统模型来作为对比。
传统的事件系统,不需要额外针对某个事件来写继承了,只需要在哪里使用哪里注册或者发送事件即可。所以相对来说,结构上会更容易理解一些。
总共是三部分组成,如下所示:
GameFramework框架详解之 Event事件系统

1.事件ID(EventID枚举)

EventID枚举类:负责存储所有的事件ID文章来源地址https://www.toymoban.com/news/detail-436585.html

    public enum EventID : <

到了这里,关于GameFramework框架详解之 Event事件系统的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • GameFramework 框架详解之 如何接入热更框架HybridCLR

    HybridCLR是一个特性完整、零成本、高性能、低内存的近乎完美的c#热更新方案 GameFramework是一个非常出色完整的基于Unity引擎的游戏框架,里面包含了非常多的模块,封装非常完整。 以前市面上的热更大多数都是Lua为主,后来出了一个ILRuntime的C#热更框架,虽然性能差了点,但

    2024年02月07日
    浏览(47)
  • GameFramework框架详解之 DataTable配置表 导表工具

    GameFramework是一个非常出色的游戏框架,他的DataTable模块也非常有特色,拥有很强的扩展性和兼容性,不过作者未给我们提供完整的工具链使用,包括 1.Excel配置表格式 2.Excel导出到txt、bytes的编辑器工具 3.Excel导出对应DR实体类的编辑器工具 如果没有这些工具,我们想改一个配

    2024年02月07日
    浏览(37)
  • JS 之 事件Event对象详解(属性、方法、自定义事件)

    一、Event对象 1、简介 ​ 事件 event 对象是指在浏览器中触发事件时,浏览器会自动创建一个 event 对象,其中存储了本次事件相关的信息,包括事件类型、事件目标、触发元素等等。浏览器创建完 event 对象之后,会自动将该对象作为参数传递给绑定的事件处理函数,我们可以

    2024年02月09日
    浏览(68)
  • C#中的委托(Delegate)和事件 (Event)详解与使用范例

    最近天气晴雨不定,你因为害怕打游戏时忘记在下雨时收衣服或者在天晴时把衣服挂出去,于是你委托好友小明在天气发生变化时打电话通知你,这就是一种委托. 下面是这种委托的实例代码 以上代码的输出为 值得一提的是,如下代码为创建一个继承自Delegate类的名为XiaoMing的子类

    2023年04月12日
    浏览(41)
  • 【GameFramework框架内置模块】18、界面(UI)

    推荐阅读 CSDN主页 GitHub开源地址 Unity3D插件分享 简书地址 QQ群:398291828 大家好,我是佛系工程师 ☆恬静的小魔龙☆ ,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 【GameFramework框架】系列教程目录: https://blog.csdn.net/q764424567/article/details/135831551 2-1、介绍 界面(UI)

    2024年04月16日
    浏览(41)
  • 【GameFramework框架内置模块】2、数据节点(Data Node)

    推荐阅读 CSDN主页 GitHub开源地址 Unity3D插件分享 简书地址 大家好,我是佛系工程师 ☆恬静的小魔龙☆ ,不定时更新Unity开发技巧,觉得有用记得一键三连哦。 【GameFramework框架】系列教程目录: https://blog.csdn.net/q764424567/article/details/135831551 2-1、简介 这一篇讲数据节点 DataNo

    2024年02月21日
    浏览(37)
  • c#事件(event)

    C#中的事件是一种特殊的委托,它用于实现观察者模式,允许对象在特定事件发生时通知其他对象。 以下是使用C#事件的示例: 首先,定义一个包含事件的类: 在上面的代码中,我们定义了一个EventPublisher类,其中包含一个名为MyEvent的事件。该事件基于EventHandler委托类型,它

    2024年02月10日
    浏览(45)
  • C#事件event

    事件模型的5个组成部分 事件拥有者(event source)(类对象)(有些书将其称为事件发布者) 事件成员(event)(事件拥有者的成员)(事件成员就是事件本身,事件不会主动发生,其只会在事件拥有者的内部逻辑的触发下发生。) 事件响应者(event subscriber)(类对象)(有

    2024年02月09日
    浏览(51)
  • 【UGF】GameFramework接入HybridCLR(wolong)卧龙C#热更框架

    HybridCLR的推广已经做得相当好了,而且热更领域突然杀出一匹黑马,热度很高,不再多做介绍,可以点击进入HybridCLR开源地址了解详情。 在此之前用过tolua和xlua热更框架, 因为C#开发方式实在太爽,想支持热更又不想使用弱类型语言,于是对ILRuntime和HybridCLR进行了评估,了解

    2023年04月11日
    浏览(91)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包