SuperAPI AI 工具集

asset-optimization

设计与创作

查看项目

更新于 10-31 12:24

技能介绍

用途

Asset Optimization 是 Blender AI 插件中的一项资产优化技能,目标是在导出前对 3D 资产执行预算控制、几何清理与游戏就绪验证。它强调“强制预算、清理几何、导出前的游戏就绪验证门”。

主要能力

技能提供一套审计清单,覆盖以下方面:

  • 几何体:三角面数与预算对比、重复顶点合并、松散几何移除、非流形修复、内部面删除、变换应用(缩放为 1,1,1)。
  • UV:打包效率大于 75%、纹素密度一致、无意外重叠。
  • 材质:数量在预算内、无未使用槽位、命名遵循 MAT_ 约定。
  • 组织:所有对象使用 SM_ 前缀命名、集合按约定组织、碰撞网格位于 COL_Collision。

技能还包含优化技术对照表,针对超预算、平面高面数、多绘制调用、重复几何、重型修改器等问题给出对应修复方式。

LOD 生成策略:

  • LOD0:完整细节(主角级)。
  • LOD1:50% 三角面,移除微倒角与小细节。
  • LOD2:25% 三角面,使用 Decimate 修改器,保留轮廓。
  • LOD3:10% 三角面,使用 impostor/卡片或简单代理。

命名示例:SM_Asset_LOD0、SM_Asset_LOD1 等。Decimate 修改器建议:硬表面使用 Planar 模式,有机体使用 Collapse 模式,减面后始终验证轮廓。

修改器清理:导出前应用堆栈或按引擎支持导出修改器、移除未使用修改器、在不需要实例时折叠镜像/阵列、记录仍处于活动状态的修改器。

技能提供场景审计报告模板,包含总三角面数、绘制调用(材质)数、对象数、已修复问题列表,以及逐对象明细表(对象、三角面、材质、状态 PASS/FAIL)。

使用方式

技能通过官方 Blender MCP 集成,可执行以下操作:通过 MCP 查询每个对象的面数、查询材质数量、运行清理操作、生成 LOD 副本、通过 MCP 场景树验证命名约定。

附带经过测试的脚本 scripts/optimize_mesh.py,用于游戏资产的安全网格清理:按距离合并、删除松散几何、溶解退化面、向外重算法线,可选有限溶解与三角化。该脚本直接操作网格数据(无需切换模式),并报告前后计数。

调用方式(当用户自行粘贴代码到 Blender 时,提供带绝对路径的简短 runpy 调用,不要内联或重写脚本):

import runpy
result = runpy.run_path("<skill_dir>/scripts/optimize_mesh.py", init_globals={"ARGS": {...}})["result"]

ARGS 参数:objects、merge_distance、limited_dissolve、triangulate、backup。

脚本在 Blender 5.2 LTS 上通过官方 Blender MCP 测试,使用 execute_blender_code 运行(或无头模式,参见 blender-mcp-workflow 技能);使用前阅读脚本头部了解每个参数。

适用场景

  • 每次导出前
  • 建模完成后
  • LOD 生成
  • 场景级性能审计
  • 交付前验证

工作流:审计 → 识别问题 → 修复 → 重新审计 → LOD 生成 → 验证报告。

限制

必须执行:导出前运行完整验证、在生产简报中记录面数、为游戏主角资产创建 LOD、导出前修复所有非流形、输出验证报告。

禁止执行:为 Blender 5.2 之前的版本编写代码或片段,或添加版本回退(该插件面向 5.2+,旧分支会教用户已不存在的 API);未做预算检查就导出;未测试就对变形网格减面;移除碰撞代理;跳过命名约定验证;将主角面部/手部优化到低于动画需求。

参考指南

  • 完整验证:blender-mcp-workflow 技能 → references/validation-checklist.md(最终门禁时加载)
  • 面数预算:blender-mcp-workflow 技能 → references/polycount-budgets.md(设置预算时加载)
  • LOD 策略:references/lod-strategies.md(创建 LOD 时加载)