Blue Flower

Egret Conversion是由白鹭时代(Egret)推出的一款专业的可以快速的将现有的Flash项目转换到Egret HT ML5项目的辅助工具。界面友好易用,无需其他工具的辅助。功能强大可扩展,支持AS3各种复杂语法特性,涵盖绝大部分的Flash API,并且支持swf资源的直接转换。
Egret Conversion是Egret系列产品中的重要组成部分,它分享的是一整套的项目转换解决方案。不仅能够帮助开发者高效的迁移Flash项目,而且分享后期项目优化和维护的高效解决方案;不仅帮助生成Egret HTML5项目,还可以帮助转换后的项目更好的接入HTML5整个生态渠道,享受更好的后期服,有需求的朋友请下载使用。
202209171728205270230000

功能特色

1、界面简明直观,转换项目通过几步鼠标操作即可完成,无需其他工具辅助。且分享了一个demo项目帮助用户迅速了解整个转换流程。
2、支持99%的AS3语法特性,对AS3语言的语法有强大的识别能力。
3、对Flash API的支持达到90%以上。对于尚未支持的API用户可以轻松自行扩展。
4、轻松扩展第三方库。将三方库代码与项目源码一起转换为TypeScript代码即可。
5、支持swf格式的资源,工具可自动或手动将swf格式资源转换为Egret支持的资源格式。对位图、文本、按钮、矢量动画、帧动画、声音等有完善的支持。
6、可以转换单个AS3文件,单个swf资源,便于项目做局部修改。
7、内嵌高效的图片压缩功能(主要针对png格式图片的优化)。
8、支持自动打包纹理集。减小资源文件数量和大小。
9、转换过程全面的智能提示。丰富详尽的转换结果报告,包括语法兼容性及转换率报告,API转换和警告列表,类型提示列表报告,资源转换报告等。
10、全面支持Egret2.5.x+版本,以使用自动脏矩形功能来提升游戏的渲染性能。

Egret Conversion入门教程

1、获取示例项目
在Egret Conversion工具中切换到“欢迎界面”页面,选择“示例项目一:连连看”,工具立刻开始解压连连看项目到系统的文档文件夹下,windows系统下解压后的项目路径为:C:\Users***\Documents\project\LianLianKan,我门把这个项目拷贝到D盘下并重新命名为FlashGame,以便路径更短便于下文的截图展示。接下来开始转换项目:
2、创建转换项目
①点“新建转换项目”,在弹框中填入相应的参数如下:
名称EgretGame是指转换后的Egret项目名称,这个可以取任何名字(合法的文件夹名)。
项目路径选择刚才的FlashGame目录路径。
输出路径填入的是转换项目目录,与转换相关的配置文件及转换后的Egret项目,log等都保存在这个目录下。建议提前创建一个空的目录,然后拷贝目录路径到输出路径,在工作区中删除转换项目时可以选择删除整个目录,因此要小心影响到不相关文件。
提示:输出路径支持中文路径。
202209171728209609790001
②FlashGame这个项目是flash builder项目,在源项目类型中选择“FlashBuilder项目”。源项目类型可以选择“FlashBuilder项目”、“FlashDevelop项目”、“Flash Professional项目”、“其他Flash项目”四个选项。根据自己的项目类型来选择正确的类型。工具根据项目类型来自动识别项目的目录结构。
不能自动识别的项目需要手动填入项目的代码路径、项目启动文件、资源路径。
202209171728219374780002
3、填好配置后,点确定按钮即开始创建转换项目。工具将在转换项目的目录下生成项目配置文件、日志文件夹、以及一个空的Egret项目。此时工具在后台进行以下一些操作:
①调用egret的命令来创建一个新的egret项目LianLianKan。
提示:如果没有安装egret,则无法创建项目,现象就是在日志区没有任何输出信息,工具卡在这里。
②从工具的安装目录下copy启动文件EgretMain.ts、API转换配置表到到”输出目录/config“目录下。
③从工具安装目录下copy文件LoadingUI.ts到”输出目录/LianLianKan/src/LoadingUI.ts“。④copy类库(与flash一一对应的ts类库)到”输出目录/LianLianKan/src“下。
⑤生成项目属性文件conversion.cts,存储项目的配置信息。
⑥如果成功创建了转换项目,在日志区有如下信息输出,此时按钮”转换Flash项目“会高亮显示。
202209171728221627910003
4、转换项目
点按钮”转换Flash项目“,工具在后台将执行以下步骤:
①源码转换:
工具会根据一些好的语法转换规则和”输出路径/config“下的API映射关系转换as3源码到“输出路径/名称/src”目录下。
具体的源码转换步骤如下:
1)按照文件逐一进行类型检查、转换特殊语法结构、API名称变换,最后把该文件的语法树打印成ts文件。
202209171728224247820004
2)copy并适当修改”输出路径\config\EgretMain.ts”文件到”输出路径\名称\src\EgretMain.ts”,主要修改启动类的名称和Embed资源列表。
202209171728226772760005
②资源拷贝
自动copy Flash项目输出目录(如bin-debug)下的资源文件,如png、xml、txt等文件,到D:\ConversionOut\EgretGame\对应的目录下。
202209171728229011330006
③swf资源转换
转换Flash项目输出目录下的swf资源文件,并生成对应的资源到”输出路径\名称\resources\”对应的目录下
202209171728231922190007
5、显示转换过程的统计信息
1) 代码文件转换率,统计了代码文件个数,以及成功生成的文件个数。
如果有文件生成失败则会在文件转换信息面板下显示
202209171728234508630008
2) API转换率,是指用了多少个API,其中有API错误的个占比是多少。
API的问题一共分为4种:
缺少类信息。有以下几种情况:
情况一:文件转换失败,导致整个文件的结构信息都没有解析出来,其它代码中引用了这个文件的类或方法就会报缺少类信息错误。
情况二:用了第三方库swc,工具解析的过程中无法得知swc中的类信息。如果是这种情况请把swc中的代码文件复制到项目的src目录下。
情况三:使用了未支持的flash类库,比如AIR的一些类库,或者flex的类库,这种情况也会导致找不到类信息。
缺少属性信息。主要是因为没有解析到相关类里有这个属性名称。
没有实现的类。在API转换表(见附录)中填写了标志“是否转换实现”。
没有实现的属性。在API转换表中填写了标志“是否转换实现”。
202209171728237097050009
6、编译项目
在代码和资源转换完成之后,下一步是编译项目。当然前提是项目转换之后没有严重的错误。
点第二步“编译Egret项目”。此时编译的是Egret的项目了。
如果出现编译错误请参考提示说明,或者参见开发者中心的文档说明(在代码和资源转换完成之后,下一步是编译项目。当然前提是项目转换之后没有严重的错误。
点第二步“编译Egret项目”。此时编译的是Egret的项目了。
如果出现编译错误请参考提示说明,或者参见开发者中心的文档说明
7、运行项目
点第三步“运行Egret项目”。
连连看小游戏在我的默认浏览器chrome上运行了。
注意,本地项目都会运行在3000端口上, 如果3000端口被占用,请先kill掉占用程序再尝试启动项目。
202209171728240650400010
8、查看与调试
游戏运行起来之后可在浏览器中调试程序。建议用chrome启动游戏。
在chrome中右键菜单里选择“审查元素”,打开相应的的js文件,可以断点执行,查看变量的内容等。
选择Egret标签页可以查看当前帧率,可以定位到游戏中具体的对象上,然后在右侧更改该对象的属性可实时生效。例如我找到右侧一个小格子,对其旋转45度,效果如下:
202209171728243727080011

更新日志

Egret Conversion 2.5.3更新:
1、[更新]对engine 3.0.5的支持。
2、[修复]修复 BitmapData 的 BUG。>

下载仅供下载体验和测试学习,不得商用和正当使用。

下载体验

请输入密码查看内容!

如何获取密码?

 

点击下载