# 3D模型动画制作规范

## 制作规范

<table data-header-hidden><thead><tr><th width="115.0859375"></th><th width="439.66796875"></th><th></th></tr></thead><tbody><tr><td><strong>类别</strong></td><td><strong>规范</strong></td><td><strong>教程</strong></td></tr><tr><td><strong>模型格式</strong></td><td><ul><li>支持 glb、gltf、fbx、obj 格式；<strong>强烈建议使用 glb 格式上传</strong>。</li><li>gltf、fbx、obj建议压缩为zip上传</li><li>大小限制：基础版 30M、个人版 50M、高级版 100M、企业版 100M。</li><li>建议模型文件大小控制在 10M 以内，5M 更佳。</li></ul></td><td><p>Q：为什么建议使用 glb 格式上传？</p><p>A：fbx、obj 上传后仅为默认材质，可能丢失贴图；gltf 文件多，不便于加载。</p></td></tr><tr><td><strong>模型制作</strong></td><td><ul><li>单个模型网格数（mesh）≤10，整个场景≤50；<strong>建议</strong>单个模型网格数（mesh）≤5，整个场景≤10</li><li>单个模型三角形数≤50,000，整个场景≤200,000；<strong>建议</strong>单个模型三角形数≤30,000，整个场景≤60,000</li><li>模型、模型节点、模型网格名称仅支持字母、数字、英文下划线、英文短横线，不支持中文、空格以及特殊字符</li><li>模型中的各个对象确保命名不重复</li><li>使用四边面进行建模，特殊情况下可以时候使用三角面</li><li>需要采用多边形建模方式</li><li>模型的Scale(大小)参数不能为零或负数</li><li>将模型的中心点放到模型的几何中心或底部中心，然后将中心点放于坐标原点</li><li>没有孤立的顶点</li><li>没有重合的顶点</li><li>没有重面与共面</li><li>设置正确的法线</li><li>移除模型中的所有未使用的对象（如空对象、隐藏的对象以及辅助对象等）</li><li>模型的变换需要重置，具体是Scale(大小)为1、旋转（rotation）为0，位置(Position)为0</li><li>非特殊情况下，尽量不让模型产生极点</li><li>合理的拓扑结构，即布线合理规范、均匀</li><li>为了使用具有透明组件的资产获得更好的渲染结果，请为透明和不透明部件使用单独的网格和材质。</li><li>重置任何变换数据、构建历史和修改器堆栈以避免导出差异</li><li>建议制作的模型保持与真实世界物体同等大小</li></ul></td><td><br><a href="https://resources.turbosquid.com/training/modeling/isolated-vertices/">什么是孤立顶点？如何解决？</a><br><a href="https://resources.turbosquid.com/checkmate-pro-specification/coincident-faces/">什么是重面？怎样避免？</a><br><a href="https://resources.turbosquid.com/training/training-scene-organization/resetting-transforms/">如何重置模型变换？</a><br><a href="https://resources.turbosquid.com/training/modeling/real-world-scale/">模型尺寸为何应与真实物体匹配？</a></td></tr><tr><td><strong>展分 UV</strong></td><td><ul><li>模型上无明显的纹理拉伸</li><li>UV接缝隐藏在模型较不可见的区</li><li>无UV重叠</li><li>贴铺展开来的UV尽可能的展平整，充分利用贴图空间</li><li>暂不支持多个UV集</li><li>暂不支持重复纹理</li></ul></td><td></td></tr><tr><td><strong>材质与贴图</strong></td><td><p></p><ul><li>单个模型材质数≤10，整个场景≤40；<strong>建议</strong>单个模型材质数≤5，整个场景≤10</li><li>单个模型贴图数≤10，整个场景≤40；<strong>建议</strong>单个模型贴图数≤5，整个场景≤10</li><li>模型材质、贴图名称仅支持字母、数字、英文下划线、英文短横线，不支持中文、空格以及特殊字符</li><li>材质与贴图确保命名不重复</li><li>贴图格式仅支持png、jpg、jpeg</li><li>贴图最大尺寸为2048x2048，建议贴图尺寸为2的幂次方（包括2、4、8、16、32、64、128、256、512、1024、2048）</li><li>建议使用图片压缩软件压缩贴图大小</li><li>支持PBR材质（包括Metallic-Roughness与Specular-Glossiness）</li><li>支持Unlit材质</li></ul></td><td></td></tr><tr><td><strong>动画制作</strong></td><td><p></p><ul><li>单个模型动画数≤10，整个场景≤40；<strong>建议</strong>单个模型动画数≤5，整个场景≤10</li><li>单个模型骨骼数≤80，整个场景≤160；<strong>建议</strong>单个模型骨骼数≤60，整个场景≤120</li><li>单个模型变形数≤50，整个场景≤100；<strong>建议</strong>单个模型变形数≤30，整个场景≤60</li><li>模型骨骼、变形、动画名称仅支持字母、数字、英文下划线、英文短横线，不支持中文、空格以及特殊字符</li><li>动画名称、变形、骨骼确保命名不重复</li><li>支持<strong>Transform动画</strong>、<strong>骨骼动画</strong>、<strong>变形动画</strong>，暂不支持<strong>顶点动画</strong></li><li>目前Blender 3.0+对变形动画导出存在问题，建议使用Blender 2.9版本</li><li>顶点骨骼影响数小于等于4（skin时每一个模型点可被影响的骨骼数上限）</li><li>动画的帧率建议为30FPS</li><li>制作动画时，模型网格、骨骼不能缩放到零或负值</li><li><strong>骨骼名称请勿命名为root</strong></li><li><strong>总的根骨骼不能带动画，</strong>如果有动画在根骨上，那就必须给已经带了动画的根骨再绑定一个空的骨骼做父级</li></ul><p><img src="/files/TWBGjTJbNQG8oO6r2lIk" alt="" width="368"></p><p><img src="/files/58Qh1X8r4655E3K6lY2I" alt=""></p></td><td></td></tr><tr><td><strong>灯光与环境</strong></td><td>支持平行光、环境光、环境贴图。</td><td></td></tr></tbody></table>

***

## glTF 与 glb 文件上传规范

如果您的 glb 或 gltf 文件上传失败，请参考以下规范。

<table data-header-hidden><thead><tr><th width="78.07421875"></th><th></th><th></th></tr></thead><tbody><tr><td><strong>序号</strong></td><td><strong>规范点</strong></td><td><strong>处理方式</strong></td></tr><tr><td>1</td><td>暂不支持量化</td><td>导出 glb 或 gltf 时请勿使用量化压缩</td></tr><tr><td>2</td><td>暂不支持 meshopt 压缩</td><td>导出 glb 或 gltf 时请勿使用 meshopt 压缩</td></tr><tr><td>3</td><td>暂不支持 draco 压缩</td><td>导出 glb 或 gltf 时请勿使用 draco 压缩</td></tr><tr><td>4</td><td>您的文件有Kivicube不支持的<strong>必须扩展</strong></td><td>当前支持的扩展：<br>• <a href="https://github.com/KhronosGroup/glTF/blob/main/extensions/2.0/Khronos/KHR_lights_punctual/README.md">KHR_lights_punctual</a><br>• <a href="https://github.com/KhronosGroup/glTF/blob/main/extensions/2.0/Khronos/KHR_materials_unlit/README.md">KHR_materials_unlit</a><br>• <a href="https://github.com/KhronosGroup/glTF/blob/main/extensions/2.0/Khronos/KHR_texture_transform/README.md">KHR_texture_transform</a><br>• <a href="https://github.com/KhronosGroup/glTF/blob/main/extensions/2.0/Archived/KHR_materials_pbrSpecularGlossiness/README.md">KHR_materials_pbrSpecularGlossiness</a></td></tr><tr><td>5</td><td>你的文件有误</td><td>可能由于您导出gltf或glb的软件出现故障导致导出了错误的文件</td></tr></tbody></table>

***


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs-en.kivicube.com/ar-asset-creation-guide/3d-model/3d-mo-xing-dong-hua-zhi-zuo-gui-fan.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
