cocos creator cocoscreator是什么?Creator代码生成优化操作的原理

cocos creator cocoscreator是什么?Creator代码生成优化操作的原理

什么是 cocos 创建者?

Cocos Creator 是 Touch Technology 的产品。 是一款以内容创作为核心的游戏开发工具。 基于Cocos2d-xcocos creator,实现了完全脚本化、组件化、数据驱动的特点。

创建和管理场景

1.场景资源自动释放

cc.loader.release

在Property Inspector中设置“自动释放资源”选项,默认是关闭的。

2.防止特定资源被自动释放

当场景切换时,如果场景已设置自动释放资源,可以使用 cc.loader.setAutoRelease 或 cc.loader.setAutoReleaseRecursively 保留这些资源。

3、加载资源无延迟

所有加载完成后才会触发场景切换。

4.依赖资源的延迟加载

加载场景时,如果打开该选项,则场景直接或间接依赖的所有纹理、粒子和声音都会延迟到场景切换时游戏开发素材,大大提高场景切换速度。

图像资源(纹理)

1.目前包括JPG和PNG。

预制件资源(Prefab)

1. 设置为手动同步时

当预制件对应的原始资源被修改时,场景中的预制件实例不会同步刷新,只有当用户手动恢复预制件时才会刷新。

2.设置为自动同步

预制实例将自动与原始资源保持同步

3. 预设选项

自动调整(默认):

设置为该选项时,引擎会根据创建数量自动调整优化策略。 第一次创建实例时,相当于“优化单次创建的性能”。 多次创建后,会自动“优化多次创建的性能”。

优化单次创建性能:

此选项会跳过此预制件的代码生成优化。

优化多重创建性能:

此选项启用此预制件的代码生成优化。

阿特拉斯资源

1、为什么要使用图集资源?

合成图集时,每张图片周围的空白区域都会被去除,整体上可以实现各种优化算法。 图集合成后,可以大大减少游戏包和内存占用。

如果多个Sprite在渲染同一个图集的图像,这些Sprite可以使用同一个渲染批次进行处理,大大减少CPU计算时间,提高运行效率。

2. 图集制作软件

纹理打包器

兹沃普特克斯

3.将之前的碎片图像转换为atlas方法

目前我们提供了一个简单的小工具,可以将场景中的图像资源引用从损坏的图像或旧相册重定向到新相册。 工作流程如下所述。

生成新图集:无论是对破损图像进行合并,还是对原始图集进行重新分割或合并游戏图片,都需要先使用TexturePacker生成一个完整的新图集。 然后将新图库导入到项目资源文件夹中。

双击打开需要重定向资源引用的场景或Prefab

点击主菜单中的“开发者->用当前场景中的指定图集替换spriteFrame...”cocos creator,在打开的对话框中选择你新生成的图集,等待替换操作完成。 (如果有多个新图集,则应重复此步骤,直到所有相关的新图集都被替换为止) 4. 如果有多个场景或预制件,则需要重复步骤 2-3 来遍历每个相关场景或预制件。

确认相关图片资源的所有引用均已替换为新相册后,您现在可以删除原来的碎片图片或旧相册。

字体资源

1. 三种字体资源

系统字体:使用标签组件中的使用系统字体属性

动态字体:TTF格式

位图字体:

位图字体由 fnt 格式的字体文件和 png 图像组成

cocos creator_cocos creator_cocos creator

2.位图字体制作工具

字形设计师

希罗

BMF 字体 (Windows)

粒子资源(粒子系统)

健全资源

1. 加载方式

音频加载方式只影响Web上的加载效果。 由于各个Web平台执行标准的进度不一致,因此提供了两种声音资源的加载方式。

网络音频

通过WebAudio加载的声音资源以缓冲区的形式缓存在引擎中。

这种方式的优点是兼容性好,问题少。 缺点是占用内存资源过多。

多玛音频

通过制定标准

当使用标准音频元素播放声音资源时,您可能会遇到某些浏览器的一些限制。

例如:每次播放必须在用户操作事件内才允许播放(WebAudio只要求第一次)、只允许播放一个声音资源等。

2.按照一定的分析方法手动选择加载音频

有时候我们可能不会使用场景的自动加载或预加载功能,而是想手动控制cc.load资源的加载过程。 这时我们还可以通过音频资源的URL来选择加载方式。

默认加载音频

默认情况下使用 webAudio 加载和播放音频。 只有在不支持的浏览器中,才会使用dom元素来加载和播放。

cc.loader.load(cc.url.raw('resources/background.mp3'), 回调);

强制使用dom元素加载

1、在资源管理器中选择一个音频,属性检查器中会有一个加载模式选项。

2、音频加载过程中,会读取url中的get参数。 你只需要定义一个useDom参数,使其具有非空值,这样在audioDownloader中,音频就会强制使用DOM元素来加载和播放音频。

cc.loader.load(cc.url.raw('resources/background.mp3?useDom=1'), 回调);

骨骼动画资源(Spine)

1.导入骨骼动画资源。 骨骼动画所需的资源有:

.json 骨架数据

.png 专辑纹理

.txt/.atlas 图集数据

2.创建骨骼动画资源

方法一:添加组件,然后添加渲染组件,选择Spine Skeleton

PS:集成Spine功能,无需添加额外插件

cocos creator_cocos creator_cocos creator

瓦片地图资源(TiledMap)

1.导入地图资源

地图所需的资源包括:

.tmx 地图数据

.png 专辑纹理

.tsxtileset数据配置文件(某些tmx文件需要)

2.创建平铺图片资源

一种方法:添加组件,然后添加渲染组件,选择TiledMap

cocos creator_cocos creator_cocos creator

文章来源:https://www.bilibili.com/read/cv26738888/