
Coating Lab
io.github.hpdkhoa由 GitHub 账号 hpdkhoa 发布v0.1.0更新于 Oct 24, 2026
Real surface finishes for game gun models: sourced finishes, variants, wear baked from use
概览
本地 MCP 服务器,为游戏枪械模型提供基于物理的表面处理,并在 Blender 中将磨损遮罩烘焙到顶点颜色。
- 可以做什么
- 浏览并读取带来源说明的饰面库,查看每种饰面的备注与来源,并可用自备饰面 JSON 按物理渲染规则检查饰面。列出磨损等级与现成变体模板,为 Model Lab 构建生成涂装规格。校验规格中的缺失饰面或饰面与材质不匹配问题。在 Blender 中把边缘、握持、摩擦、污垢等磨损遮罩烘焙到模型副本,再按等级检查各变体的磨损。生成 look-dev 渲染与图集,并按槽位导出变体数值供引擎材质使用。
- 适用场景
- 适用于为游戏武器模型制作贴图、希望获得一致且有据可查的饰面与磨损等级而非手绘遮罩的场景,尤其适合已用 Model Lab 建模并希望直接从构建生成涂装规格的用户。
- 运行要求
- 通过 stdio 本地运行;需安装 coatinglab-mcp Python 包(Python 3.10 或更高版本)并具备 Blender 4.2 或更高版本。可选环境变量:COATINGLAB_BLENDER 指定非标准 Blender 路径,COATINGLAB_LIBRARY 提供自备饰面 JSON,COATINGLAB_OUT 指定输出目录(默认 ~/.coatinglab),COATINGLAB_WAIT_FOR 指定烘焙前不得运行的进程名。
安装
在 SourceWeft 中
- 打开 控制台中的 Coating Lab,将其添加到工作区。
- 为需要使用其工具的对话启用该服务。
Desktop only,通过 STDIO。 STDIO 服务会启动本地进程,因此需要 SourceWeft 桌面宿主。
其他 MCP 客户端
参照 仓库 中的启动说明。
README
Coating Lab
Real surface finishes for game gun models, worn where use wears a gun.
[license: MIT] [Python 3.10+] [PyPI: coatinglab-mcp] [MCP Registry: coatinglab-mcp] [Blender: 4.2+] [tools: 13] [finishes: 21 sourced]
An MCP server that gives game gun models real surface finishes, worn where use wears a gun.
- A finish library with sources. Anodized aluminium, manganese and zinc phosphate, blued and nitrided steel, ceramic coatings (FDE, OD green, tungsten, graphite, coyote), stainless, polymer, rubber, brass, copper, lead, walnut. Each is a physically based value (linear colour, metallic, roughness) with what shows when it wears through and the sources of its numbers. Values reasoned from descriptions are marked as estimates.
- Coating variants. A spec puts a finish on each material slot of a model, in as many variants as you want (an issued rifle, a two-tone FDE build, an abused one), each at a wear level: new, issued, worn or abused.
- Wear from evidence, baked once. In Blender, into the model's vertex colours: exposed edges, where the hands work the gun (its grip, the support hand, the controls), where parts slide (a magazine in its well, a stock on its tube), and dirt where the surface is occluded and round the muzzle and the port. Every variant reads the same masks, so a new variant costs nothing.
- Checks. Every finish against the rules physically based rendering rests on. Every variant's worn share against its level, and no wear inside corners.
- One formula everywhere. The checks, the look-dev renders and an engine's material compute wear the same way
(
coat.py), so what passes is what the player sees.
[Six AR-15 coatings on one Model Lab build]
Model Lab (modellab-mcp) builds give their own slots (upper, lower,
barrel and more), marks and parts: spec_for_modellab makes a coating spec from a build in one call.
Install
Python 3.10 or later and Blender 4.2 or later.
Tools
The masks and the formula
The bake writes the vertex colour Col:
An engine's material follows the formula in src/coatinglab/coat.py. A wear level is a threshold: the higher the
level, the weaker the mask that already wears through. A grunge texture breaks wear up but never makes wear.
What is estimated
- Every roughness value. No source maps a finish's surface to a rendering roughness.
- The colours of the anodized, phosphate, blued, nitrided and most ceramic finishes. The standards set processes, not colours. OD green and coyote come from FED-STD-595 colour numbers.
- The wear amounts. Sources say where guns wear, not how fast. Each level is set so Model Lab's M4A1 lands in the middle of its band.
- A hand's zone is a sphere: on a round handguard the support hand's wear reaches its top as well as its underside.
License
MIT
来源:README.md,提交 9d8c26a
工具
0版本历史
1- v0.1.0最新Oct 15, 2026
评分
已满足适用检查项的 50%
该评分衡量此收录条目的完整程度,依据注册中心条目、端点与公开来源计算得出。它不是对服务器本身的评价,也不表示服务器安全或当前可用:可连通性是带日期的检查结果,评分也不包含安装量或用户评价。
- 近 30 天内可连通25 分
请保持端点能够响应 MCP 握手;SourceWeft 每 30 天探测一次。
- 已声明认证方式10 分
请在注册中心条目中声明凭据请求头,或保持端点能够响应探测,以便判定其认证方式。
- 已列出工具15 分
请让服务器在无凭据时响应 tools/list,或发布可在沙箱中无凭据启动的软件包。
- 描述必需15 分
- 图标10 分
- 文档15 分
- 许可证10 分