mcpField
C
Coating Lab

Coating Lab

本地服务
github.com/hpdkhoa媒体与设计12 周前更新

关于 Coating Lab

Coating Lab 是面向游戏武器美术的 MCP 服务,可将有来源依据的材质涂层和磨损烘焙到 Blender 模型中。它支持涂层变体、校验、渲染及引擎材质参数,并统一使用磨损公式。

主要功能

  1. 01带来源的物理材质涂层库
  2. 02按材质槽设置涂层变体和磨损等级
  3. 03在 Blender 中烘焙基于证据的磨损遮罩
  4. 04校验涂层和规格
  5. 05渲染变体并导出引擎参数

适用场景

  1. 01为武器模型的材质槽应用不同涂层
  2. 02将磨损图案烘焙到顶点颜色
  3. 03按磨损规则检查涂层变体

MCP 相关

向 MCP 客户端提供涂层查询、规格校验、磨损烘焙、渲染和引擎参数工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"hpdkhoa-coatinglab": {
"command": "uvx",
"args": [
"coatinglab-mcp"
],
"env": {
"COATINGLAB_OUT": "<COATINGLAB_OUT>",
"COATINGLAB_BLENDER": "<COATINGLAB_BLENDER>",
"COATINGLAB_LIBRARY": "<COATINGLAB_LIBRARY>",
"COATINGLAB_WAIT_FOR": "<COATINGLAB_WAIT_FOR>"
}
}
}
}
启动命令uvx coatinglab-mcp
需要配置的环境变量
COATINGLAB_OUTThe only folder Coating Lab writes to; defaults to ~/.coatinglab
COATINGLAB_BLENDERBlender's executable, if it is not on the PATH or in the usual install folder
COATINGLAB_LIBRARYA finishes JSON of your own, merged over the built-in library
COATINGLAB_WAIT_FORProcess names that hold the machine (e.g. UnrealEditor.exe); a bake refuses to start while one runs

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
pypicoatinglab-mcp0.1.0

工具

13

收录的工具列表 · 更新于 2 周前

此工具无需参数。

详细介绍

Coating Lab

为游戏枪械模型打造真实的表面涂层,并按照枪械实际使用时的磨损方式呈现磨损。

许可证:MIT Python 3.10+ PyPI:coatinglab-mcp MCP 注册表:coatinglab-mcp Blender:4.2+ 工具:13 涂层:21 种,有来源

一个 MCP 服务,可为游戏枪械模型赋予真实的表面涂层,并按照枪械实际使用时的磨损方式呈现磨损。

  • 有来源可查的涂层库。 阳极氧化铝、锰磷化和锌磷化、发蓝钢和氮化钢、陶瓷涂层(FDE、OD green、tungsten、graphite、coyote)、不锈钢、聚合物、橡胶、黄铜、铜、铅、胡桃木。每种涂层都有基于物理的数值(线性颜色、金属度、粗糙度),并说明磨穿后露出的材质以及数值来源。根据描述推算的数值会标记为估算值。
  • 涂层变体。 一个规格可将涂层应用到模型的每个材质槽,并创建任意数量的变体(制式步枪、双色 FDE 构型、严重磨损的枪械等),每个变体都可设置磨损等级:全新、制式使用、磨损或严重磨损。
  • 根据依据烘焙磨损,只需一次。 在 Blender 中将磨损烘焙到模型的顶点颜色中:暴露的边缘、手部操作枪械的位置(握把、辅助手、控制部件)、部件滑动的位置(弹匣在弹匣井中、枪托在枪托管上),以及表面被遮挡处、枪口和抛壳口周围的污垢。所有变体读取同一组蒙版,因此创建新变体无需额外成本。
  • 检查。 检查每种涂层是否符合基于物理的渲染所依据的规则;检查每个变体的磨损比例是否符合其等级,并确保内角没有磨损。
  • 全程使用同一公式。 检查、外观开发渲染和引擎材质计算磨损的方式一致(coat.py),因此通过检查的效果就是玩家看到的效果。

同一个 Model Lab 构建中的六种 AR-15 涂层

Model Lab (modellab-mcp) 构建会提供各自的材质槽(上机匣、下机匣、枪管等)、标记和部件:spec_for_modellab 可通过一次调用,根据构建生成涂层规格。

安装

需要 Python 3.10 或更高版本,以及 Blender 4.2 或更高版本。

pip install coatinglab-mcp
{"mcpServers": {"coatinglab": {"command": "coatinglab-mcp"}}}
设置项含义
COATINGLAB_OUTCoating Lab 唯一写入的文件夹。默认为 ~/.coatinglab。
COATINGLAB_BLENDER当 Blender 不在 PATH 或常见安装目录中时,用于指定 Blender。
COATINGLAB_LIBRARY自定义的涂层 JSON 文件,与内置库合并。
COATINGLAB_WAIT_FOR会占用机器的进程名称。烘焙会等待这些进程全部退出后才开始。

工具

工具功能
list_finishes、read_finish涂层库,以及某种涂层的说明和来源。
check_library、check_finish检查涂层库或你自己的涂层是否符合物理规则。
list_wear_levels、list_templates磨损等级和现成的变体集。
spec_for_modellab用于 Model Lab 构建的涂层规格。
validate_spec规格中的问题:槽位未指定涂层、涂层用于错误的材质。
bake将磨损遮罩烘焙到模型副本中。
check_coating检查每个变体的磨损是否符合其等级,以及是否避免磨损进入角落。
render_variants外观开发渲染图和图集。
engine_params引擎材质中某个变体按槽位划分的数值。

遮罩和公式

烘焙会写入顶点颜色 Col:

通道含义
R边缘:平坦表面为 1,暴露的锐利边缘为 0
G握持:手部操作枪械的位置为 1
B摩擦:部件相互滑动的路径上为 1
A污垢:表面遮蔽处,以及枪口和端口周围为 1

引擎材质遵循 src/coatinglab/coat.py 中的公式。磨损等级是一个阈值:等级越高,原本会产生磨损的遮罩越弱。污垢纹理会打散磨损,但不会产生磨损。

估算内容

  • 所有粗糙度值。没有来源会将涂层表面映射为渲染粗糙度。
  • 阳极氧化、磷化、发蓝、氮化和大多数陶瓷涂层的颜色。标准规定的是工艺,而非颜色。OD 绿和郊狼棕采用 FED-STD-595 色号。
  • 磨损量。来源说明枪械哪些部位会磨损,但没有说明磨损速度。每个等级的设定都使 Model Lab 的 M4A1 落在其范围中间。
  • 手部区域以球体表示:在圆形护木上,支撑手造成的磨损会延伸到顶部和底部。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。