关于 scenario-3d-worlds
Scenario 3D Worlds 是一项用于创建可探索 3D Gaussian splat 环境的技能,也涵盖将单张地点图像转为 splat 的流程。它介绍 Marble、HY World 和 TripoSplat,帮助创作者按场景、视频、照片或物体输入选择模型。
主要功能
- 01生成可探索的 Gaussian splat 环境
- 02使用 Marble 的三个质量等级
- 03通过 HY World 流程创建 splat
- 04使用 TripoSplat 生成单物体 splat
- 05输入、模式与任务处理指南
适用场景
- 01将概念图转为可探索的关卡初稿
- 02根据文本或场景照片创建世界
- 03将漫游视频转换为 splat 环境
- 04根据单张物体照片生成 splat
MCP 相关
该技能通过 `scenario` 技能使用 Scenario 工具,包括模型发现、模式查询、生成任务以及资源展示或下载。
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ scenario-labs/ skills --skill scenario-3d-worlds安装后在 Claude Code 中输入/scenario-3d-worlds确认已加载。
详细介绍
场景 3D 世界
概述
这些模型会将可探索环境构建为 3D 高斯泼溅,而非多边形网格:打造可供漫步并实时渲染的体积场景,无需编辑 UV 或拓扑(Marble 泼溅也支持导出为三角形网格或碰撞网格)。这里并列介绍三家供应商:World Labs Marble(分三个质量档位)、Hunyuan 的 HY World 流程,以及用于单个物体的 TripoSplat。使用 search 发现这些模型,并将 model_schema_get 视为接口约定;HY World 的部分成员在创建时带有地理限制标签,因此不同团队和地区看到的结果会有所不同。
连接方式和核心循环:参见 scenario 技能;多边形网格、骨骼绑定和 3D 查看器:参见 scenario-3d 技能;不涉及泼溅阶段的纯天空盒工作:参见 scenario-skyboxes 技能。如果你可用的技能中缺少此处提到的同系列技能,请让用户安装(npx skills add scenario-labs/skills --skill <name>);如果无法等待安装,请根据工具架构继续操作,并注明这一缺失。
快速参考
根据你已有的内容选择成员(输入名称以实时架构为准):
| 你有 | 成员 | 输入 |
|---|---|---|
| 一个文字创意 | Marble,任意档位 | 仅 prompt |
| 一张平面图或 360 度图像 | Marble | images,仅一项;如果是 360 度图像则设 isPano: true |
| 同一场景的 2 到 8 张照片 | Marble | images |
| 一段漫游视频 | Marble 或 HY Multi-view to Splat | video |
| 多张重叠照片 | HY Multi-view to Splat | images,创建时支持 2 到 64 张 |
| 一张地点照片 | HY Image to Skybox,然后 Skybox to Splat | image,然后 panorama |
| 一张物体照片 | TripoSplat | image;自动移除背景 |
凡是同时支持 images 和 video 的成员,这两个参数都不能同时使用;仅当传入一张图像时,isPano 才适用。TripoSplat 需要一件清晰的物体,其他所有成员都需要一个场景:将模型用于对方适用的对象,是最常见的失败原因。
先用 Marble 起草,再升级
Marble 的三个档位(1.0 Draft、1.1、1.1 Plus)接受完全相同的输入;只要输入和 seed 相同,各档位生成的世界也相同。先用 Draft 反复迭代——创建时大约一分钟即可返回——然后用完全相同的参数重新运行 1.1(均衡)或 1.1 Plus(最高保真度;场景条件允许时会动态生成更大的世界)。创建时各档位的费用相差十倍以上,因此提交前先运行 dry_run。splatResolution 用于选择存储密度(100k、500k、full);disableRecaption: true 可阻止 Marble 改写你的提示词。
HY World 流程耗时较长
Image to Skybox 是图像模型,而非 3D 模型:它会将一张地点照片扩展为 2:1 等距柱状全景图(backend 用 full 换取保真度,用 qwen 换取速度和更低成本)。将其输出的资源 ID 作为 panorama 传给 Skybox to Splat。在该阶段,三个轨迹开关(applyNavTraj、applyUpRoute、applyReconIteration,默认均为 true)会影响成本和耗时;maxSteps 只会略微提升效果,对耗时和成本都不会造成实质影响。创建时,泼溅阶段的中位耗时接近一小时:使用 pending_job_ids 持续调用 jobs_wait;超时不代表失败,绝不能因此再次调用 model_run。Multi-view to Splat 则恰恰相反,速度快且成本低:最适用于相机穿过带视差的静态场景时拍摄的内容。
示例:根据概念图生成关卡的灰盒
- 使用
search,设置target="models"、query="marble world"、public=true。不同档位会并排显示,例如model_worldlabs-marble-1-0-draft(这是编写本文时找到的可用项:每次会话都要重新搜索)。 - 使用 Draft ID 调用
model_schema_get:先查看字段、上限和默认值,再进行其他操作。 - 使用
upload_asset上传概念图(参见scenario技能),获取资源 ID。 - 调用
model_run并设置dry_run=true,以及parameters={"images": ["asset_x"], "prompt": "abandoned observatory interior, dusk light through the dome slit", "seed": 1234, "splatResolution": "full"}; 再对 1.1 ID 运行一次 dry run,查看升级成本。 - 对 Draft 调用
model_run并设置wait=false,然后使用任务 ID 调用jobs_wait;如果超时,则通过pending_job_ids再次调用。 - 使用
asset_display查看 splat 并在其中漫游;在 Draft 上调整并重复操作,直到布局合适。 - 使用第 1 步中的 1.1 或 1.1 Plus ID,重新运行完全相同的参数并使用相同的
seed,然后对最终的.spz调用asset_download。
常见错误
- 同时传入
images和video:在 Marble 和 Multi-view to Splat 中,两者互斥。 - 输入单张等距柱状投影图,却未设置
isPano: true:Marble 会将其视为平面照片。 - 在 Draft 和升级档位之间更改或省略
seed:生成的世界会不同。 - 将场景输入 TripoSplat,或将单个物体输入世界模型。
- 将 Skybox to Splat 的
jobs_wait超时视为失败:任务仍在运行。 - 通过调整
maxSteps来提升质量或降低成本:轨迹开关会影响成本,而maxSteps对清晰度的影响微乎其微。 - 期待 splat 提供 UV 或可编辑拓扑:如需多边形资源,请使用
scenario-3d中的网格生成器。