scenario-textures
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChineseScenario texture and material workflows
Scenario 纹理与材质工作流
Overview
概述
Scenario generates seamless, tileable textures from text or reference images, upscales them without breaking the tile, and applies PBR materials when texturing 3D meshes. Model availability differs per team and evolves, so always discover models at run time instead of hardcoding IDs: with the need in the user's own words for a capability, for a member known by name.
recommendsearchConnection and the core generation loop: see the skill in this repo. If a sibling skill named here is missing from your available skills, ask the user to install it (); unattended, proceed from tool schemas and flag the gap.
scenarionpx skills add scenario-labs/skills --skill <name>Scenario可根据文本或参考图生成无缝、可平铺的纹理,在不破坏平铺特性的前提下对纹理进行超分,并在为3D网格贴图时应用PBR材质。不同团队的可用模型存在差异且会不断更新,因此请始终在运行时发现模型,而非硬编码ID:使用并以用户自己的语言描述所需能力,使用查找已知名称的模型。
recommendsearch连接与核心生成循环:参见本仓库中的技能。如果你可用的技能中缺少此处提到的同级技能,请让用户安装它();若处于无人值守模式,请基于工具schema继续处理并标记缺失项。
scenarionpx skills add scenario-labs/skills --skill <name>Quick reference
快速参考
| Step | Tool | Notes |
|---|---|---|
| Find texture models | | |
| Inspect inputs | | Always call before |
| Generate | | |
| Wait | | Re-call with |
| View and save | | Download for engine import |
| Upscale | | 2x to 8x, tiling preserved |
| 步骤 | 工具 | 说明 |
|---|---|---|
| 查找纹理模型 | 使用 | |
| 检查输入参数 | | 在调用 |
| 生成 | | 设置 |
| 等待任务 | | 使用 |
| 查看与保存资产 | | 下载后可导入引擎使用 |
| 纹理超分 | 在纹理超分模型上调用 | 2倍至8倍,保留平铺特性 |
What live search confirmed at authoring time (examples to re-discover, not constants)
编写时实时搜索确认的内容(仅为重新发现的示例,非固定常量)
- Seamless generation: (Scenario Texture) takes a prompt (a tileable hint is appended automatically),
model_scenario-texture/widthfrom 16 to 3840 in multiples of 16,height,quality, up to 10seedfor style, andreferenceImages(off by default) witheraseSeam/overlapto inpaint away both seam axes.featherRadius - Themed texture LoRAs (Flux.1 LoRA, tag ): floors, marble, concrete, stone walls, wood boards, brick, terracotta, hand-painted, cybernetic, realistic textures. They expose dedicated texture capabilities (
sc:texture,txt2img_texture,img2img_texture).controlnet_texture - Tiling-safe upscaling: (Scenario Texture Upscale),
model_sc-upscale-flux-texture2 (the minimum) to 8, presetsupscaleFactor/precise/balancedriding the samecreativeand controlnet sliders the schema exposes. It re-renders, so expect small tonal drift:strengthwith low strength minimizes it, and the result is compared against the source before shipping.precise - Material-look conversion: (Texture Converter) turns a flat image into a surface material using
model_sc-texture-converter,raised,shiny,polishedsliders and anangularrelief toggle.invert - PBR maps come from two different routes. For a flat texture, 2D map extractors (,
recommend, with the user's words about extracting maps from a flat texture;capability="img2img"only for one already known by name) return a full set in one img2img call:search(PATINA Image to Maps) outputs base color, normal, roughness, metalness, and height, each as its own image asset whosemodel_patinanames it (metadata.type,texture-albedo,texture-normal,texture-smoothness,texture-metallic) in the order requested; the roughness request comes back labeled smoothness, so confirm the convention before wiring it.texture-heighttiles a PBR material straight from a prompt. For a mesh, 3D texturing and image-to-3D models emit the maps instead (Tripo 3.0 Texturing, Tencent Texture Edit, Meshy 7 Retexture); enable the PBR toggle found viamodel_patina-material. Retexturing a full mesh is a 3D-to-3D pipeline: seemodel_schema_get, andscenario-3dfor the Meshy retexture contract.scenario-meshy
- 无缝生成:(Scenario Texture)接收提示词(会自动追加可平铺提示),
model_scenario-texture/width范围为16到3840,且必须是16的倍数,支持height、quality、最多10张用于风格参考的seed,以及referenceImages(默认关闭)功能,可通过eraseSeam/overlap对两个轴向的接缝进行重绘修复。featherRadius - 主题纹理LoRA(Flux.1 LoRA,标签):地板、大理石、混凝土、石墙、木板、砖块、陶土、手绘风格、赛博风格、写实纹理。它们提供专门的纹理能力(
sc:texture、txt2img_texture、img2img_texture)。controlnet_texture - 保平铺超分:(Scenario Texture Upscale),
model_sc-upscale-flux-texture范围为2(最小值)到8,提供upscaleFactor/precise/balanced三种预设,对应schema中暴露的creative和controlnet滑块参数。由于是重新渲染,可能会出现轻微的色调偏移:使用低强度的strength预设可最大程度减少偏移,且输出结果会在交付前与源图进行比对。precise - 材质外观转换:(Texture Converter)可通过
model_sc-texture-converter、raised、shiny、polished滑块和angular浮雕开关,将平面图像转换为表面材质。invert - PBR贴图有两种获取途径。对于平面纹理,2D贴图提取器(使用,设置
recommend,并以用户语言描述从平面纹理提取贴图的需求;仅在已知名称时用capability="img2img"查找)可在一次img2img调用中返回完整贴图集:search(PATINA Image to Maps)可输出基础色、法线、粗糙度、金属度和高度贴图,每个都是独立的图像资产,其model_patina会按请求顺序标注类型(metadata.type、texture-albedo、texture-normal、texture-smoothness、texture-metallic);粗糙度请求返回的标签是smoothness,因此在接入使用前请确认参数约定。texture-height可直接根据提示词生成可平铺的PBR材质。对于网格模型,则由3D贴图和图生3D模型输出贴图(Tripo 3.0 Texturing、Tencent Texture Edit、Meshy 7 Retexture);请通过model_patina-material找到并启用PBR开关。完整网格重贴图属于3D到3D处理流水线:参见model_schema_get,以及Meshy重贴图协议对应的scenario-3d。scenario-meshy
Worked example: seamless brick, iterated then upscaled
实操示例:无缝砖块纹理的迭代与超分
- with the user's own words as
recommend("seamless tileable weathered brick"), pick the seamless generator (e.g.prompt).model_scenario-texture model_schema_get.model_id="model_scenario-texture"- with
model_run. For a themed pack, price the batch withparameters={"prompt": "weathered red brick wall, moss in the mortar joints", "width": 1024, "height": 1024, "eraseSeam": true, "seed": 42}first, then launch the runs withdry_run=true.wait=false - with
jobs_wait(the ids returned byjob_ids=["job_..."]). A ~180s timeout is not an error: re-call with the returnedmodel_runaspending_job_ids, never a secondjob_ids. Thenmodel_runthe output asset.asset_display - Iterate: rerun with the same and an edited prompt, or add
seedto lock a style.referenceImages=["asset_..."] - Upscale: with
recommendand the user's own words ascapability="img2img"("upscale this texture without breaking the tile"), hold the pick to tiling preservation (a generic upscaler breaks the repeat),promptit, thenmodel_schema_getwith the image and the factor and preset fields the schema names (at authoring time the texture upscaler tookmodel_runandupscaleFactor: 2), raising the factor only deliberately: cost follows output pixels, and this leg can only bepreset: "precise"-priced once its input asset exists, so a two-step chain is never priced up front.dry_run - Verify tiling at no cost: the saved PNG's left column against its right and top row against bottom should differ no more than neighboring interior columns do, and a 2x2 self-tile proof sheet shows any seam instantly.
- the final asset for engine import.
asset_download
- 使用用户的描述作为("seamless tileable weathered brick")调用
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 - 调用,传入
jobs_wait(job_ids=["job_..."]返回的ID)。约180秒的超时并非错误:请使用返回的model_run作为pending_job_ids重新调用,切勿重复发起job_ids。然后调用model_run展示输出资产。asset_display - 迭代:使用相同的和修改后的提示词重新运行,或添加
seed锁定风格。referenceImages=["asset_..."] - 超分:使用和用户的描述作为
capability="img2img"("upscale this texture without breaking the tile")调用prompt,请选择支持平铺保留的模型(通用超分器会破坏纹理的重复平铺特性),调用recommend获取其结构,然后调用model_schema_get,传入图像以及schema中指定的倍率和预设字段(编写本文时,纹理超分器使用model_run和upscaleFactor: 2),请谨慎提高倍率:费用随输出像素数增加,且该步骤只有在输入资产存在后才能通过preset: "precise"预估费用,因此两步处理链路无法提前预估总费用。dry_run - 可免费验证平铺特性:保存的PNG图像左列与右列、顶行与底行的差异不应大于内部相邻列的差异,使用2x2自平铺验证图可立即发现任何接缝。
- 调用下载最终资产,用于导入引擎。
asset_download
Common mistakes
常见错误
- Skipping : parameter names differ per model and most models reject an empty payload.
model_schema_get - Using a generic upscaler on a tileable texture: it breaks the repeat at the seams. Use the texture-specific upscaler, which preserves tiling.
- Generating huge sizes directly: generate near 1024, then upscale 2x to 8x. Generation dimensions cap at 3840.
- Routing a flat texture through a 3D texturing model just to get PBR maps: the 2D map extractors do that in one img2img call, and the 3D models are for meshes.
- Ignoring engine sizing: engines expect square power-of-two textures (the seamless generator defaults to 1024x1024, 1:1). The generator accepts any multiple of 16, so choose 1024 or 2048 deliberately.
- Hardcoding model IDs: availability differs per team. Re-discover each session.
- 跳过调用:不同模型的参数名称不同,大多数模型会拒绝空参数负载。
model_schema_get - 对可平铺纹理使用通用超分器:会破坏接缝处的重复特性。请使用纹理专用超分器,它会保留平铺特性。
- 直接生成超大尺寸纹理:先生成接近1024尺寸的纹理,再进行2倍至8倍超分。生成尺寸上限为3840。
- 为获取PBR贴图而将平面纹理传入3D贴图模型:2D贴图提取器可在一次img2img调用中完成该任务,3D贴图模型是用于网格模型的。
- 忽略引擎尺寸要求:游戏引擎要求纹理为正方形且尺寸为2的幂(无缝生成器默认输出1024x1024的1:1纹理)。生成器支持任意16的倍数的尺寸,因此请刻意选择1024或2048等标准尺寸。
- 硬编码模型ID:不同团队的可用模型存在差异,请在每个会话中重新发现可用模型。