关于 scenario-textures
为 Scenario 工作流提供纹理与材质制作指导,面向需要生成可平铺纹理并用于 3D 引擎的创作者。涵盖模型发现、纹理放大和 PBR 材质处理。
主要功能
- 01从文本或参考图生成无缝纹理
- 02保留平铺效果的纹理放大
- 03将平面图转换为表面材质
- 04提取 PBR 贴图或为网格贴图
- 05按模型架构检查参数并运行生成
适用场景
- 01制作可重复铺设的游戏砖墙纹理
- 02放大纹理而不破坏边缘接缝
- 03从平面纹理生成法线与粗糙度贴图
- 04为 3D 网格应用 PBR 材质
MCP 相关
该技能指导使用 Scenario MCP 工作流发现模型、检查参数、生成并下载纹理资源。
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ scenario-labs/ skills --skill scenario-textures安装后在 Claude Code 中输入/scenario-textures确认已加载。
详细介绍
场景纹理与材质工作流
概述
Scenario 可根据文本或参考图像生成无缝、可平铺的纹理,在不破坏平铺效果的前提下提升纹理分辨率,并在为 3D 网格贴图时应用 PBR 材质。不同团队可用的模型各不相同,且会不断变化,因此请始终在运行时发现模型,而不是将 ID 写死:根据用户描述需求的原话,使用 recommend 查找具备相应能力的模型;如果知道模型名称,则使用 search。
连接方法和核心生成流程:请参阅此仓库中的 scenario 技能。如果这里提到的某个关联技能不在你可用的技能中,请让用户安装该技能
(npx skills add scenario-labs/skills --skill <name>);如果需要在无人值守的情况下继续操作,请依据工具架构进行处理,并指出缺失的技能。
快速参考
| 步骤 | 工具 | 说明 |
|---|---|---|
| 查找纹理模型 | 根据用户描述需求的原话使用 recommend | capability 为 txt2img 或 img2img,并在 prompt 中说明纹理需求(目录会将纹理模型标记为 txt2img_texture、img2img_texture);按名称搜索时使用 search |
| 检查输入 | model_schema_get | 调用 model_run 前务必先调用 |
| 生成 | model_run | 先设置 dry_run=true,为批次估价 |
| 等待 | jobs_wait | 使用 pending_job_ids 再次调用 |
| 查看并保存 | 先调用 asset_display,再调用 asset_download | 下载后导入引擎 |
| 放大 | 对纹理放大器使用 model_run | 放大 2x 至 8x,并保留平铺效果 |
撰写本文时实时搜索确认的信息(示例,需重新查找,并非固定常量)
- 无缝生成:
model_scenario-texture(Scenario Texture)接受提示词(会自动附加可平铺提示),width/height为 16 到 3840,且必须是 16 的倍数;还接受quality、seed、最多 10 张用于参考风格的referenceImages,以及默认关闭的eraseSeam,并可搭配overlap/featherRadius对两个接缝轴进行修补。 - 主题纹理 LoRA(Flux.1 LoRA,标签
sc:texture):地板、大理石、混凝土、石墙、木板、砖块、陶瓦、手绘、赛博风、写实纹理。它们提供专用的纹理功能(txt2img_texture、img2img_texture、controlnet_texture)。 - 支持平铺的放大:
model_sc-upscale-flux-texture(Scenario Texture Upscale),upscaleFactor为 2(最小值)到 8;预设precise/balanced/creative使用与架构公开的相同strength和 controlnet 滑块。该工具会重新渲染,因此色调可能略有偏移:低strength搭配precise可最大限度减少偏移;发布前应将结果与源图进行比较。 - 材质外观转换:
model_sc-texture-converter(Texture Converter)使用raised、shiny、polished、angular滑块和invert浮雕切换项,将平面图像转换为表面材质。 - PBR 贴图有两种不同的生成路径。对于平面纹理,2D 贴图提取器(使用
recommend,capability="img2img",并描述用户希望从平面纹理中提取贴图;仅在已知名称时使用search)可通过一次 img2img 调用返回完整贴图集:model_patina(PATINA Image to Maps)会输出基础颜色、法线、粗糙度、金属度和高度贴图,每张贴图均为独立的图像资源,其metadata.type会标明类型(texture-albedo、texture-normal、texture-smoothness、texture-metallic、texture-height),顺序与请求一致;粗糙度请求返回时标记为 smoothness,因此接入前请确认采用的约定。model_patina-material可直接根据提示词平铺 PBR 材质。对于网格,3D 纹理和图像转 3D 模型会直接生成贴图(Tripo 3.0 Texturing、Tencent Texture Edit、Meshy 7 Retexture);请启用通过model_schema_get找到的 PBR 开关。完整网格的重新纹理处理属于 3D 转 3D 工作流:参见scenario-3d和scenario-meshy中 Meshy 重新纹理的接口约定。
实战示例:无缝砖块,迭代后再放大
- 使用用户自己的措辞作为
prompt,调用recommend(“无缝平铺的风化砖块”),选择无缝生成器(例如model_scenario-texture)。 - 调用
model_schema_get,设置model_id="model_scenario-texture"。 - 调用
model_run,使用parameters={"prompt": "weathered red brick wall, moss in the mortar joints", "width": 1024, "height": 1024, "eraseSeam": true, "seed": 42}。 如需制作主题素材包,先使用dry_run=true估算批量价格,然后使用wait=false启动任务。 - 使用
job_ids=["job_..."]调用jobs_wait(这些 ID 由model_run返回)。约 180 秒超时并不代表出错:使用返回的pending_job_ids作为job_ids再次调用,切勿再次调用model_run。 然后对输出资源调用asset_display。 - 迭代:使用相同的
seed和修改后的提示词重新运行,或者添加referenceImages=["asset_..."]来锁定风格。 - 放大:使用
capability="img2img"和用户自己的措辞作为prompt(“放大这张纹理,同时保持可平铺”)调用recommend,优先选择能保留平铺效果的工具(通用放大器会破坏重复图案),对其调用model_schema_get,然后使用图像以及架构中指定的倍率和预设字段调用model_run(编写本文时,纹理放大器使用upscaleFactor: 2和preset: "precise")。只有经过审慎考虑后才提高倍率:费用取决于输出像素数,而且只有输入资源存在后才能对这一步使用dry_run估价,因此两步链式流程无法预先估价。 - 免费验证平铺效果:保存的 PNG 左列与右列、顶行与底行之间的差异,应不大于相邻内部列之间的差异;制作 2x2 自平铺验证图可立即显示任何接缝。
- 使用
asset_download下载最终资源,以便导入引擎。
常见错误
- 跳过
model_schema_get:不同模型的参数名称各不相同,而且大多数模型不接受空载荷。 - 对可平铺纹理使用通用放大器:这会破坏接缝处的重复图案。请使用能保留平铺效果的专用纹理放大器。
- 直接生成超大尺寸:先以接近 1024 的尺寸生成,再放大 2 到 8 倍。生成尺寸上限为 3840。
- 仅为获取 PBR 贴图,就将平面纹理交给 3D 纹理模型处理:2D 贴图提取器只需一次 img2img 调用即可完成,而 3D 模型用于网格。
- 忽略引擎的尺寸要求:引擎需要边长为 2 的幂的正方形纹理(无缝生成器默认尺寸为 1024x1024,比例为 1:1)。生成器接受任意 16 的倍数尺寸,因此请审慎选择 1024 或 2048。
- 对模型 ID 进行硬编码:不同团队可用的模型各不相同。每次会话都要重新发现模型。
评论
支持 Markdown