Egret游戏通用开发框架

2023-11-20

  地址:https://github.com/yicaoyimuys/EgretGameEngine

             简介:现在这套代码已经有几个项目都在使用了,主要用于各项目组间统一开发规范,便于开发人员调整,以及新手快速熟悉项目,支持Egret2.0.x和2.5.x版本,此项目代码适用于中大型的项目,如果是小游戏用这个就有点复杂了

             包含内容(core):

             1:MVC模块:

(controller、view、model、proxy)模块与模块之间,模块内部通信,都使用自定义消息机制

             2:Net网络请求模块

(Http、WebSocket),WebSocket支持ProtoBuf,Utf,不同协议解析只需要继承基类后实现decode\encode函数即可


             3:Utils工具类

,各种工具类,不断的填充
                1) AllAsyncExecutor,并行执行一大堆函数
                2) AnchorUtil,在Egret中已经没有anchorX、anchorY,可用此类实现同等功能
                3) ArrayUtils,对Array的操作处理
                4) AverageUtils,主要用于在不同帧存储不同数据,计算平均数,多用于基于时间差的功能的平滑性处理
                5) DateUtils,时间格式化工具类
                6) DebugUtils,调试用工具类
                7) DelayOptManager,分帧计算工具类
                8) DeviceUtils,设备工具类
                9) DisplayUtils,DisplayObject操作类
               10) EffectUtils,效果工具类
               11) FrameDelay,帧延迟处理
               12) FrameExecutor,分帧处理,自定义间隔帧数
               13) KeyboardUtils,键盘事件处理类
               14) LocationProperty,浏览器地址栏参数处理类
               15) Log,封装console.log,便于正式上线时,关闭所有log输出
               16) MathUtils,数学计算工具类
               17) md5,md5加密类
               18) MessageCenter,用于接收服务端消息,包含分帧处理,防止某一消息性能低下,造成明显卡顿
               19) ObjectPool,对象池类
               20) Percent,百分比类
               21) QueueExecutor,  执行队列处理,用于处理有一大堆需要排队处理的函数
               22) RandomUtils,随机数工具类
               23) RenderTextureManager,cacheAsBitmap的替代方案,解决QQ浏览器在1G内存的机器上最多能使用20个Canvas的限制
               24) ResourceUtils,资源加载工具类,对RES模块的封装,支持使用多个resource.json,防止项目组多成员操作同一个文件时引起svn冲突
               25) ResVersionManager,单一资源通过版本号加载管理类
               26) RockerUtils,摇杆控制类
               27) ShockUtils,震屏类
               28) StageUtils,stage操作类
               29) StringBuffer,字符串拼接类,使用str+str的方式在js中比较低能
               30) StringUtils,字符串操作工具类
               31) TextFlowMaker,用于处理策划配置的html文本
               32) TimerManager,通用的基于时间、帧频的定时器处理,建议在项目所有的定时任务都使用此类,便于查找代码性能瓶颈

             4:StarlingSwf模块,

可使用StarlingSwf来制作UI或动画

             5:Scene模块,

一个简单的Scene管理切换代码

             6:dragonBones动画模块,

使用dragonBones制作动画,支持当一个fla比较大时,可拆分为多个fla进行导出,生成DragonBonesArmatureContainer

             7:Sound音乐、音效模块,

一个方面使用的音乐管理模块,支持音乐文件的缓存定时清理

             8:资源加载按照单一文件版本号的形式加载

,scripts文件中为通过svn中文件版本号生成配置

             9:支持将多个json文件合并为一个文件进行加载使用

,使用方式不变,依然通过Res.GetRes

             项目代码中有两个Demo,在example文件夹下

             1:GUITest,一个类似农场的gui的demo,用于演示mvc

             2:ActTest,一个格斗类游戏demo,用于演示dragonBones的动画处理、及其他相关代码

             有兴趣的同学可以一块交流下

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Egret游戏通用开发框架 的相关文章

随机推荐

  • 亲爱的波特兰——CJ麦科勒姆告别信

    系列文章目录 精选优美英文短文1 Dear Basketball 亲爱的篮球 精选优美英文短文2 Here s to the Crazy Ones 致疯狂的人 我祝你不幸并痛苦 约翰 罗伯茨毕业致辞 Dear Portland You kn
  • 数据库学习笔记(9)——python连接数据库/python操作数据库/sql注入

    1 python连接数据库 1 不管是那一门编程语言都是不可以直接连接数据库的 需要有连接介质 连接池 2 python的连接池有 pymysql 或者 mysqlclient 3 在cmd中导入库 pip install pymysql
  • java文件上传

    简介 java文件上传 1 Commons FileUpload简介 1 Commons FileUpload组件 Commons是Apache开放源代码组织的一个Java子项目 其中的FileUpload是用来处理HTTP文件上传的子项目
  • C++类大小计算

    关于C 类大小计算 这在一本书 深度探索C 对象模型 一书中有非常详细的介绍 我这里归纳整理 本节讨论的是64位地址计算机 指针长度8字节 1 类的大小取决于以下成员 a 非静态成员变量 b 虚函数table c 数据对齐 d 空类 当然还
  • linux下makefile的CC和gcc

    参考自 http www cnblogs com zhouyinhui archive 2010 02 01 1661078 html CC gcc CC arm hisiv400 linux gcc 上面是经常遇到的makefile中编写
  • 阿兰·麦席森·图灵 介绍

    Alan MAthison Turing 英国数学家 逻辑学家 被称为 计算机科学之父 人工智能之父 她曾协助盟军破解德国的著名密码系统Enigma 帮助盟军取得了第二次世界大战的胜利 他对计算机的贡献在于他提出的有限状态自动机也就是图灵机
  • 微信支付商家转账到零钱功能使用教程

    之前的 企业付款到零钱 功能 微信支付已下架 以后用 商家转账到零钱 功能取代 下面介绍如何开通并使用该功能 从运营账户支出 首先需要先去了解一下微信支付的这3个账户的关系 商家转账到零钱 功能 是从运营账户转账给用户的 开通 商家转账到零
  • ATL字符串转换宏

    有比MultiByteToWideChar和WideCharToMultiByte更简单的字符串转换宏 你相信吗 头文件 d program files microsoft visual studio 8 vc atlmfc include
  • Flutter 碰到的各种坑 持续更新

    Android转flutter 也有1年多了 在新公司将一个产品用flutter从零开始开发 感觉flutter 还是不太稳定 各种问题还是比较多 总之这次体验还是比较差 Error on line 21 column 5 of pubsp
  • Kafka——Mac搭建kafka环境

    1 下载Kafka安装包 下载地址 将压缩包移动到 usr local mv kafka 2 12 3 1 0 tgz usr local 解压 tar zxvf kafka 2 12 3 1 0 tgz 2 启动 启动zookeeper
  • WEB安全测试手册

    概述 目的 适用读者 适用范围 注意事项 测试级别说明 测试过程示意图 1 服务器信息收集 1 1 运行帐号权限测试 1 2 Web服务器端口扫描 1 3 HTTP方法测试 1 4 HTTP PUT方法测试 1 5 HTTP DELETE方
  • 前端例程20211213:网页去色(以灰度形式显示)

    文章目录 前言 实现与演示 前言 在每年的一些特殊的日子 比如公祭日等 很多网站会将页面整体去色以灰度形式显示 以示哀悼 这里将对网页中实现该功能进行简单说明 实现与演示 使用CSS的 filter grayscale 属性可以给元素添加灰
  • 主进程退出后子进程还会存在吗?_深度好文

    干了这碗鸡汤 我急切地盼望着可以经历一场放纵的快乐 纵使巨大的悲哀将接踵而至 我也在所不惜 太宰治 人间失格 大家好 这里是周日凌晨4点 仍在笔耕不辍的程序喵大人 下面隆重推出我呕心沥血 耗时半个月完成的精心力作 01 什么是进程 标准定义
  • Element Plus 配置自动按需引入后,手动引入组件,组件样式丢失

    起因 最近在尝试使用 Element Plus 写一些简单的页面 跟着官方文档走配置了自动按需引入 npm install D unplugin vue components unplugin auto import vite config
  • IDEA全局搜索框打不开,全局搜索不全,全局搜索不到解决办法

    IDEA默认全局搜索快捷键是Ctrl Shift F 当我在使用IDEA的全局搜索时 发现IDEA的全局搜索快捷键不起作用 无法弹出全局搜索框 此时想到了应该是快捷键被占用了 首先想到的就是搜狗输入法 打开搜狗输入法设置 高级 把这个简繁切
  • Python 基于BP神经网络的鸢尾花分类

    本文用Python实现了BP神经网络分类算法 根据鸢尾花的4个特征 实现3种鸢尾花的分类 算法参考文章 纯Python实现鸢尾属植物数据集神经网络模型 2020 07 21更新 增加了分类结果可视化result visualization
  • Elasticsearch 索引模板:优化大数据搜索与分析

    Elasticsearch 是一个强大的分布式搜索和分析引擎 广泛应用于处理大数据量的搜索和分析任务 为了提高搜索效率和数据组织结构的一致性 Elasticsearch 提供了索引模板 template 的功能 索引模板允许我们在创建索引时
  • 《python语言程序设计》第5章 第23题 贷款计算

    LOAN AMOUNT 10000 number years 5 NUMBER OF YEAR number years 12 interest rate 5 month rate interest rate 1200 print f Lo
  • springboot跳转页面

    SpringBoot里面只有src目录 在src main resources下面有两个文件夹 static 和 templates springboot默认static中放静态页面 而templates中放动态页面 themleaf和fr
  • Egret游戏通用开发框架

    地址 https github com yicaoyimuys EgretGameEngine 简介 现在这套代码已经有几个项目都在使用了 主要用于各项目组间统一开发规范 便于开发人员调整 以及新手快速熟悉项目 支持Egret2 0 x和2