资源文件说明
资源文件大致可以理解为由这三个部分组成
1、源文件(非必须) 格式较为通用,一般无法被引擎直接使用,引擎需要经过一系列解析才可以获取相关内容
2、引擎资源(必须) 引擎解析源文件后生成的引擎文件,一般不可读,仅可放在引擎中使用
3、编辑器信息(必须) 引擎文件在编辑器里的信息,包括但不限于ID、参数、层级关系等
这三类文件的关系
1、源文件可以生成对应的引擎资源和编辑器信息,但对于工程来说并不是必需品
例如:当我将一张图片导入编辑器后,会在editor_table\editoricon目录下生成对应的json文件,且会在对应的foloder_info中记录其层级信息,引擎内容则生成在custom\CustomImportRepo.local\Texture中
2、用户需要通过编辑器信息去获取引擎资源,如果编辑器信息丢失且没有源文件能帮助其修复,对应资源将会被视为冗余资源被删除
例如: 一般在多人协作时由于漏上传文件,更新不全等误操作容易导致出现上述问题,首先需要确定OriginalRes中的文件是否完整,完整的话可以删除custom\CustomImportRepo.local下的resource.repository文件并刷新解决。 冗余资源在编辑器打开地图后会弹窗提示对应列表。
3、如果编辑器信息存在但是引擎资源丢失,拿到的就会是一些空图、空模型、空特效,甚至有可能引起引擎崩溃
例如:手动删除custom\CustomImportRepo.local下任意文件夹,开图大概率闪退。
这三类文件在工程文件中的体现
1、所有的源文件存在在对应地图文件的custom文件夹中(除去CustomImportRepo.local)
2、所有的引擎文件存在于CustomImportRepo.local文件夹中
3、所有的编辑器信息记录在工程一级目录的editor_table文件夹中
编辑器面板介绍
分类页签:切换不同类型资源显示(会对右上角导入功能产生影响,在模型页面点导入默认就是导入模型)
收藏夹:用于显示/管理用户收藏的资源
资源目录:资源所在的文件夹
资源列表:选中文件夹(包括其子文件夹)中具体的资源条目
展示页:资源展示,3D显示支持鼠标拖拽改变视角
详情页:用于显示/调整资源具体信息(上传是否压缩等)
资源标签:与资源搜索相关
资源搜索相关规则参考:【通用搜索】搜索优化-模糊搜索规则
资源筛选:通过标签对当前资源列表内的资源进行筛选
相关编辑器功能说明
1、刷新 根据源文件生成对应的引擎资源和编辑器信息,如果是第一次使用还会初始化工程内的所有资源
2、清理 清理掉目前冗余的资源
3、修复 重新生成引擎目录,多用于编辑器信息和引擎资源出现出入的情况
4、自定义资源管理 查看目前所有自定义资源使用情况,支持一键清理未使用资源(目前引用统计暂时统计不到lua代码中的引用,如果是lua项目慎用)
5、右键菜单相关
替代:将这个资源替换为其他同类资源,所有的引用也会一同处理
再次编辑:对资源进行二次修改
打开文件夹:跳转到该资源在OriginalRes中对应的的目录
和windows文件对应关系
模型–model
特效–effect
图标–icon
鼠标样式–cur
天空球–sky_box
字体–font
序列帧–sequence
地形纹理–terrain_texture
Live2D–Live2D
文件结构
OriginalRes内以.package为后缀的文件夹与资源管理器内一一对应
没有后缀的文件夹对应的是编辑器内的文件夹
OriginalRes中的文件大致分为两种格式:正常模式(上图) 和 兼容模式(下图)
正常模式的文件内容如下:
模型:蒙皮、动画文件(FBX或MDX)、贴图、描述文件
除特效外的其他资源:资源原始文件,描述文件
描述文件记录的是资源版本以及一些编辑器内的设置
关于兼容模式的说明
由于OriginalRes的功能是个新功能,对于老图做了一些兼容性处理,大致流程是在第一次刷新的时候会将现有资源导出一份按照兼容模式的格式存进OriginalRes内。
相关FAQ
1、使用SVN/GIT怎么上传资源?
最推荐的方式是三类文件全量上传,但如果存在多人合作同时上传资源的情况有可能会导致resource.repository冲突,这个时候将其他所有文件上传,并打开编辑器点击快速修复即可。
2、怎么判断是哪类文件出现了问题?
如果资源管理器内没有对应目录,一般是编辑器信息丢失,推荐重新导入
如果对应目录依然在但是资源管理器内不显示,一般是引擎资源出现问题,推荐右键替换后将源文件再次代入
3、为什么要分成这几类文件?
主要是出于工作效率考虑,如果每一次都需要从源文件开始的话,基本上就等同于吃饭从种水稻开始一样
4、上传打包地图文件过大怎么优化?
所有的自定义资源都是会打进游戏包体的,推荐及时清理掉未使用的自定义资源,可以尝试使用资源管理器中自带的资源管理功能(lua中引用的资源目前无法统计到)
5、批量删除和刷新的速度问题。
目前经过一系列优化,一张大小为5G的图全量刷新所需要的时间已经被控制在了半个小时以内,删除未使用资源大约需要20分钟,超过这个时间一般是出现了报错,建议将图和日志文件发给官方处理。
缩小包体
包体资源构成:官方资源、自定义资源
作者可从以上2个方面进行缩减
官方资源
官方资源概念:Y3官方资产
官方资源为公用资源,若玩家在游玩您的地图前已经在其他地图下载过官方资源,则无需重复下载
对包体的影响:作者地图对官方资源的引用会影响包体的大小
引用资产的规则
物编
-
单位-图标(图标) 单位-小地图头像(图标) 单位-模型(模型) 单位-自定义键值(all)
-
装饰物-模型(模型)
-
物品-图标(图标) 物品-模型(模型) 物品-自定义键值(all)
-
技能-图标(图标)技能-自定义键值(all)
-
魔法效果-图标(图标) 魔法效果-特效(特效) 魔法效果-挂接模型(模型)魔法效果-自定义键值(all)
-
投射物-图标(图标) 投射物-特效(特效) 投射物-挂接模型(模型)投射物-自定义键值(all)
-
科技-图标(图标)科技-自定义键值(all)
-
可破坏物-图标(图标)可破坏物-自定义键值(all)
-
声音-音频(音频)声音-自定义键值(all)
场景地编
-
直接放置在场景中的特效和模型(特效、模型)
-
场景中使用到的地表纹理(贴图)
特效
- 特效引用的模型、其他特效、音频(特效、模型、音频)
ui编辑器
-
图片(图标)
-
模型控件(模型)
-
特效控件(特效)
-
live2d控件(live2d)
-
序列帧控件(序列帧)
-
spine控件(spine)
-
文本框(字体)
-
输入框(字体)
美术效果
-
天空盒(天空盒)
-
特效(特效)
-
指示器外观(cur)
-
跳字管理(图标)
血条编辑器
-
图标(图片)
-
进度条(图片)
-
文本框(字体)
所以,需要检查游戏内容,以减少不必要的引用,通常有以下几种情况带来不必要的引用
不必要的初始模板内容
创建地图时自带的资源(英雄、装饰物、物品等)
您可检查是否使用,如不使用则进行删除(在对应的内容使用鼠标右键,选择删除即可)
多余的商城下载资源
作者可通过商城下载并导入所需的内容(插件、资源等)
下载的包体内会包含多个单位、技能。作者需检查是否都使用,如不使用可删除之。
多余的物编内容
有时,物编多余的内容会带来不必要的资源引用,作者可通过以下步骤进行检查删除
**操作步骤1:**打开物体编辑器窗口,检查每种类型下的内容是否被使用(比如场景中放置、触发器使用等)
**步骤2:**删除未使用的物体:找到未使用的物体并进行删除操作,以减少资源占用。
检查可破坏物和装饰物,并清理
对于可破坏物和装饰物,可用工具进行清理
步骤1:在物编窗口内,选择清理数据按钮,即可查看目前未放置到场景内的物体
步骤2:勾选“全选未使用”,并点击清理按钮,即可删除当前未使用的物体
检查地形纹理并清理
使用工具检查多余的地形纹理:
主界面中点击(1)地形编辑(2)地形纹理(3)设置(4)选择“移除未引用”编辑器就会自动选择弃用和未使用的预设地形纹理,进行删除。
自定义资源
作者在资源管理器中自行导入的资源为自定义资源。
这部分资源会直接使包体变大,作者可通过以下3种方法进行检查并清
方法一:使用资源管理器的自带功能删除冗余资源
步骤1:打开资源管理器,在菜单栏中点击“自定义资源管理”按钮,打开资源管理弹窗
步骤2:勾选“全选未使用”,并点击清理按钮,即可删除当前未使用的自定义资源
方法二:手动删除冗余资源
打开资源管理器,在资源管理器中逐个检查自定义资源的使用情况,手动删除未被引用的资源,如下图所示。
方法三:直接在文件夹中删除
在地图的custom文件夹中查看各个文件的占用情况,包括文件大小和最后修改日期。
删除不必要的文件或备份旧版本,以释放存储空间
这些步骤将有助于优化资源管理,减少冗余资源并释放包体空间。完成缩包后可尝试重新上传确认包体大小是否达标
测试大厅期间测试包体大小
由于资源部分分为地图数据和官方资源数据,而官方资源数据会在不同地图间复用,所以要了解真实的地图大小需要对本地的所有数据进行清理,清理之后重新下载地图就能获取真实的地图大小。
2.0\game\LocalData\etc : 存放了地图数据
2.0\game\LocalData\OfficialShopResource : 存放了官方资源数据
将上述两个文件夹删除,重新下载地图,平台上显示的地图下载量即真实的地图大小。