模型资源

您所在的位置:网站首页 游戏提取模型添加材质 模型资源

模型资源

2024-07-08 20:51| 来源: 网络整理| 查看: 265

模型资源 ​

目前,Creator 支持 FBX 和 glTF 两种格式的模型文件。

FBX(.fbx):支持 FBX 2020 及更早的文件格式。glTF(.gltf 、.glb):支持 glTF 2.0 及更早的文件格式,详情可参考 glTF 模型。

关于如何从第三方工具导出这两种模型文件,请参考 导入从 DCC 工具导出的模型。

模型导入 ​

从外部导入编辑器中后,在 资源管理器 中可得到对应的模型资源文件,其目录结构如下:(以 glTF 文件为例,fbx 文件相同)

无动画的模型文件结构如下:

包含动画的模型文件结构如下:

.material — 材质文件.mesh — 模型文件.texture — 模型贴图文件.animation — 模型动画文件.skeleton — 模型骨骼文件.prefab — 导入时自动生成的预制件Mesh 文件 ​

Mesh 文件中存储了模型的顶点、索引、纹理坐标等数据。在 层级管理器 中选中 Mesh 文件后,在 属性检查器 便可以看到 Mesh 的一些信息以及它的预览效果。

属性功能说明Vertices模型的顶点数Triangles模型的三角形数UV模型的纹理坐标索引MinPos模型的最小坐标值MaxPos模型的最大坐标值模型使用 ​

将模型文件导入后,直接将模型文件的根节点从 资源管理器 拖拽到 层级管理器 中想要放置的节点下,即可完成节点创建,此时模型就成功在场景中创建了。 或者也可以将模型文件的节点展开,选中模型文件节点下的 .prefab 文件,从 资源管理器 拖拽到 层级管理器 中同样能够完成创建。

模型资源属性 ​

当在 资源管理器 中选中模型资源文件时( .fbx 、 .gltf 或 .glb),在 属性检查器 中就可以直接设置模型资源的相关属性。

一共有四个标签可以选择:

标签说明模型(Model)用于设置模型网格导入时的相关选项动画(Animation)用于查看和编辑模型动画片段材质(Material)用于设置模型材质导入的相关选项FBX用于设置 FBX 文件相关选项模型(Model) ​

属性说明法线(Normals)导入法线信息,包括以下四种选项:1. 可选(Optional):只导入模型文件中包含的法线,适用于非常清楚自己模型数据的情况。2. 排除(Exclude):不导入法线。3. 仅在必要时重新计算(Required):导入模型文件中的法线,若模型文件中不包含法线则重新计算,适用于大部分情况。模型数据本身没问题的话还是推荐使用该项,没有额外的处理。4. 重新计算(Recalculate):无论模型文件中是否包含法线,都直接重新计算并导入。选择该项会增加计算量,但是可以消除模型原始数据法线没有归一化带来的后续问题。切线(Tangents)导入切线信息,包括 Optional、Exclude、Require、Recalculate 四种选项,选项功能可参考 法线 的说明,二者相差不大。形变法线(Morph normals)导入形变法线信息,包括:可选(Optional):只导入模型文件中包含的形变法线,适用于非常清楚自己模型数据的情况。排除(Exclude):不导入形变法线。跳过验证(Skip Validation)是否跳过对模型文件的标准检测。是否禁用 Mesh 拆分(Disable mesh split)为了解决实时骨骼动画系统下 uniform vector 数量限制问题,目前在资源导入期会根据骨骼数量做拆分,这会对其他系统也产生影响。如果确定不会使用实时计算模式(对应 SkeletalAnimation 组件的 useBakedAnimation 选项未勾选时),可以勾选此项以提升性能。但注意改变此选项会影响生成的 prefab 内容,需要对应更新场景中的引用。 详情请参考下文。允许数据访问(Allow Data Access)标识此模型中的所有网格数据是否可被读写,此接口只对静态网格资源生效。若不勾选,网格数据提交至 CPU 后会自动释放提升单一根节点(Promote Single Root Node )开启此选项,若模型场景只有一个根节点,那么该节点就作为预制体的根节点,否则会为根节点新建一个父节点是否禁用 Mesh 拆分(Disable mesh split) ​

在 v3.6 的更新中我们优化了此选项的策略:

默认情况下不再拆分模型,不对导入的模型数据做修改(也维持以前的模型设置不变)如果骨骼数量未超过实际运行时驱动的限制,直接使用 uniform 传递如果骨骼数量超过限制,则使用纹理传递

网格优化 (Mesh Optimize) ​属性说明顶点缓存(Vetex Cache)优化三角形顺序,提升 GPU 缓存命中率,建议对顶点较多的模型开启。顶点提取(Vertex Fetch)优化三角形顺序,提升顶点数据提取效率,建议对顶点较多的模型开启。过度绘制(Overdraw)优化三角形顺序,减少过度绘制,建议对顶点较多的模型开启。

若有多个选项同时开启,优化算法会自动调节参数,达到最佳效果。

网格简化(Mesh Simplify) ​属性说明目标比率(Target Ratio)目标顶点数比率,建议设置为 0.5自动误差率(Auto Error Rate)是否自动计算误差率误差率(Error Rate)调整此值,获得最佳效果锁定边界(Lock Boundary)是否锁定网格数据边界

已知的问题为:可能会存在在减面后丢失 UV 排布的情况 开发者需关注 属性检查器 内的警告情况以决定是否使用该选项。

网格切块(Mesh Cluster) ​属性说明生成包围体(Generate Bounding)是否为切块生成包围球和法线锥网格压缩(Mesh Compress) ​属性说明编码(Encode)使用二进制编码压缩(Compress)zlib 算法,使用 LZ77 和哈弗曼进行编码量化(Quantize)量化,压缩浮点信息,减小包体LODS ​

网格导入器会检查网格的子节点是否以 _lodN 结尾,如有,则会自动识别这些子节点为 LOD 节点。如果没有,也可以通过勾选 LODS 选项,提供自动的 LOD 功能。

LOD1、LOD2 选项用于设置不同等级的三角面比例。

更多请参考 多层次细节。

以上选项算法细节,请参考开源库:https://github.com/zeux/meshoptimizer

动画(Animation) ​

上方的动画文件表格是当前模型下的所有动画资源信息,下方是当前选中动画的具体帧数信息的编辑区域,可以在此处更改动画名称或进行简单的动画裁剪。

点击图上红框内的 + 按钮可以添加动画文件,添加的新文件默认拷贝一份完整的 clip 数据,可以在下方的 Start、End 输入框中输入帧数来裁剪动画。(目前暂时不支持拖拽裁剪动画)

点击图上红框内的 - 按钮可以删除当前选中的动画文件

材质(Material) ​

上半部分的属性说明如下,下半部分则展示了当前模型中包含的材质。

属性说明提取材质若想对模型文件自带的材质进行修改时,可开启该项,将文件结构目录下的材质文件提取出模型资源,便可以进行材质的调整修改了。材质提取目录用于指定或者查看提取出来的材质所在的目录。使用顶点色是否使用顶点色。混合模式下的深度写入当 Alpha 模式为 Blend 时开启深度写入。FBX ​

属性说明与 1.x 版本兼容若勾选该项,则在导入模型时会兼容 Cocos Creator 3D 1.x 版本的导入方式。注意:启用该项可能会影响已经导入且被使用/引用的资源。动画烘焙速率指定动画烘焙速率,单位为 帧/秒,可选项包括 自动、24、25、30 和 60。提升单一根节点当开启该项,若 FBX 资源中包含的场景仅有一个根节点,则在将 FBX 场景转换为 Creator 的预制件时,会以该根节点作为预制件的根节点。否则将以 FBX 场景作为根节点。优先使用文件时间范围若勾选该项,则导入的 FBX 动画会优先使用 FBX 文件中记录的动画时间范围。若不勾选该项,则不使用 FBX 的动画时间范围,将会粗略地计算动画时间范围。有些 FBX 工具可能没有导出动画时间范围信息,那么也是粗略地计算动画时间范围。


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3