CANONICAL SPEC
特性规则设计
特性规格层(Canonical Spec)是网站的核心数据:每个特性存一份与语言无关的定义, MCP 检索时返回此契约,再由各引擎翻译层落地为具体实现。
规格字段
每个特性存一份与语言无关的定义。这是 MCP 往各引擎翻译时的契约。
| 字段 | 类型 | 说明 |
|---|---|---|
| id | string | 特性唯一标识,与渲染特性库 label 一致 |
| inputs | string[] | 函数 g(Input) 的输入数据,来自特性依赖层 |
| channels | Record<string, ChannelSpec> | 采样通道定义:role 语义、type 或 channel 分量 |
| parameters | Record<string, ParameterSpec> | 宿主材质暴露的可调参数,含 default 与 range |
| algorithm | string | 算法组合标识,与语言无关的逻辑契约 |
| validated | boolean | 网站验证通过后打标,MCP 可优先推荐 |
CANONICAL SPEC
Transmission
透射
{
"id": "Transmission",
"inputs": [
"BaseColor",
"Normal",
"ViewDir",
"UV"
],
"channels": {
"iChannel0": {
"role": "environment",
"type": "cube|2d"
},
"iChannel1": {
"role": "thickness",
"channel": "R"
},
"iChannel2": {
"role": "absorption",
"channel": "RGB"
}
},
"parameters": {
"IOR": {
"default": 1.45,
"range": [
1,
2.5
]
},
"TransmissionWeight": {
"default": 1,
"range": [
0,
1
]
},
"RoughnessTrans": {
"default": 0.02,
"range": [
0,
1
]
}
},
"algorithm": "refract_sample + beer_lambert + schlick_fresnel",
"validated": true
}