agentleFS
limoaCatherinelimoaCatherine/game-studio-harness/skills/env-asset-checklist/SKILL.md

env-asset-checklist

Skill4 starsChanged 55 days agoMITView on GitHub

按网格定模块尺寸与枢轴,做接缝/碰撞/材质复用后试摆再导出。触发:场景模型、模块化场景、环境资产、接缝。

The file

Files
SKILL.md

场景模块资产怎么做

何时用

  • 灰盒冻结后要铺模块化场景
  • 接缝飞、枢轴乱、碰撞穿
  • 材质实例/关键字爆炸
  • 同屏实例超预算要控密度

怎么做

1. 模块规划(网格 + 模块表)

  1. 打开灰盒与项目模块网格;定边长、枢轴(角点/中心)、命名前缀、碰撞策略(简碰撞优先)。
  2. 建 env/modules.csv:mod_id|size|pivot|collision_type|streamable?|hlod?|grid_ok?;与灰盒尺寸不符标「须回白盒」。表写入走表格写入配方(excel-com-write)若项目用 xlsx。
  3. 灰盒主尺寸保持冻结;玩法要改尺寸先走 blockout-pass 重锁再开模。
  4. 向用户索取同屏实例/面数档;写入本关密度目标。
  5. 分件边界:墙/地/柱/套件清晰;超大不可复用整屋须文档批准。
  6. grid_ok=N 或密度档空时停在本步:回白盒/索取档,不开模。

做到:csv 行与计划模块 1:1;尺寸/枢轴与灰盒一致;密度档写入;流式边界声明。

2. 建模、接缝、材质、碰撞(DCC 检查器)

  1. 邻接边按网格对齐;DCC 网格吸附摆缝;UV 接缝 texel 连续;用均匀缩放与吸附对齐,不用非均匀缩放遮缝。
  2. 拓扑检查器清开放边/非流形/重叠顶点;枢轴放到约定点并冻结变换;单位与角色资产一致。
  3. 材质用实例/参数变体(脏度/潮湿/色相);统计 shader 关键字/变体数;同外观族共享母材,每模块只调参数。
  4. 碰撞:盒/胶囊/简化凸包优先;mesh collider 必须写理由与预期同屏影响。
  5. LOD 级数与 lod-budget-pass 政策对齐;共享材质策略写进 csv 备注。
  6. 模块边长不吃网格 → 回步骤 1 改尺寸规划再建模,不靠微移凑缝。

做到:拓扑检查无阻塞;接缝吸附可贴合;材质实例可数、无整套复制;碰撞类型有据。

3. 主路径试摆(胶囊走 + Stats)

  1. 代表关卡段摆主路径与战斗场;标记穿插、错碰撞、挡技能/镜头点到问题表 env/tryout_issues.md。
  2. 用碰撞胶囊/CharacterController 走主路径测净空;卡脚、卡枪线、卡相机记阻塞。
  3. 开引擎 Stats/Profiler 读同屏实例或 Tris;超密度档:先合批/实例化,再降贴图;处置写回密度目标。
  4. 开关流式边界试进出;丢依赖或露馅→改依赖图或边界。
  5. 临时方向光查法线翻面与接缝黑线;翻面回 DCC 修法线。
  6. 阻塞净空/翻面未清 → 回步骤 2 修源网格/碰撞再谈导出。

做到:问题表可指位置;胶囊走通主路径;实例/Tris 有读数与处置;流式进出无 Missing。

4. 导出、命名、引擎抽检

  1. 导出含 LOD、碰撞、枢轴;贴图相对路径可解析;Console 无 Missing。
  2. 模块表与文件一一对应;命名 token 与 export-naming-gate 同一套;干扫阻塞命名先改。
  3. 清理空物体、测试灯、无用 UV 集;源与导出分目录。
  4. 引擎抽检墙地拼接:缩放=1、接缝闭合、碰撞匹配可行走;材质实例可在关卡调脏度/色相。
  5. 表版本与文件 mtime/哈希对齐;密度超标区截图+实例数供 lod/perf。
  6. 若发现只靠关卡挪枢轴「视觉对齐」→ 回源修枢轴再导出(回步骤 2),不在关卡微移冒充模块正确。

做到:Console 无 Missing;命名干扫通过;抽检缩放=1 接缝闭合;表↔文件一致。

做到

  • 尺寸/枢轴与灰盒冻结一致;邻接接缝与 UV 对齐;拓扑无阻塞;碰撞可用
  • 材质实例复用;胶囊试摆通过;密度有读数与处置
  • 导出含 LOD/碰撞/枢轴;命名可扫;Console 无 Missing

失败回哪一步

  • grid_ok=N、密度档空、偷改灰盒尺寸冲动 → 回步骤 1(或先 blockout-pass)
  • 接缝飞、翻面、碰撞错、整套材质复制 → 回步骤 2
  • 胶囊卡死、实例超档、流式 Missing → 回步骤 3(必要时回 2)
  • 命名干扫红、Console Missing、关卡挪枢轴 → 回步骤 4→2 修源再导

下一步常接:export-naming-gate;灰盒未冻先 blockout-pass。

加厚:场景模块化与碰撞

A. 模块与 Atlas

  1. 重复件 vs Unique 件分列;Atlas/裁剪策略写明;texel 密度按项目尺(如 px/m)抽查门、栏杆、地面。
  2. 枢轴:模块对齐网格(如 1m/0.5m);旋转尽量 0,变换在引擎摆放。
  3. 碰撞:简化凸包/盒;命名与渲染对应;禁用自动碰撞叠加双套。
  4. LOD/HLOD:远景合并策略与 lod-budget-pass 同版本;植被另算密度预算。
  5. 光烘:第二套 UV 若需要,壳间距与重叠按引擎烘培规范检查。
  6. 危险区可读:色彩/剪影与玩法危险区约定一致,不靠后期后处理救命。

B. 导入验

  1. 命名过 export-naming-gate;导入预设含静态网格单位/轴向。
  2. 关卡摆放抽 1 条主路径:无漏碰、无飞面、无 Z-fight 热点。
  3. 同屏面数与材质球数对照场景预算切片。

不合格回:密度/Atlas 乱→制作步;碰撞双套→导入预设;主路径漏碰→碰撞步。

检查清单(密化)

  1. texel 密度抽查记录;Atlas 策略写明。
  2. 碰撞命名对应且无双套。
  3. 主路径漏碰=0;飞面/Z-fight 热点已处置。
  4. LOD/HLOD 政策版本与全局一致。
  5. 导入验绿灯路径列表已发关卡。

工具锚点(live mcp.json)

  • gaea:check_gaea_status create_terrain add_node build_terrain read_terrain_graph…
  • treeit:文件/工作区级(validate_tree_input / prepare_workspace / queue_open / list_outputs / handoff_notes)。不能遥控生长笔刷;导出后回 blender-mcp/meshlab,引擎抽检走 gamedev-mcp。
  • ldtk / tiled:2D/分层数据(tiled 需 Node≥22.15)
  • magicavoxel / blender-mcp / meshlab / cloudcompare
  • materialpilot / gamedev-mcp / excelMCP(modules.csv)
  • DoD: modules 表↔文件;接缝闭合;Stats 有读数;Console 无 Missing。

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.