WorldClaw:用智能体流程生成可编辑、可探索的 3D 开放世界

生成一个从文本描述出发、能自由探索的 3D 开放世界,这个目标听起来很直接,但真正动手时,会发现它要求一套系统同时处理好三件事:全局空间要连贯、局部内容要丰富、生成出来的东西还得是独立可编辑的素材,而不是一张死图。

WorldClaw 走了一条“从粗到细、从全局到区域”的路。它的核心想法是:一个连贯的世界不需要一次性生成所有地方。先用全局约束把场景语义、空间组织、地形基底定下来,再按需把那些需要精细内容的区域逐步补上。整个过程分成三个阶段:意图分析与规划、全局地形生成、区域物体生成与放置。三个阶段由专门的智能体(Agent)驱动,每个智能体负责自己那一段的决策和执行,并通过结构化的中间表示互相传递信息。

下面顺着这三个阶段,拆开看每个环节的实际操作和踩坑点。


一、意图分析与规划:把一句话变成可执行的场景说明书

用户给的自然语言提示通常很短,比如“一座热带海盗岛屿”或“带有部落聚居地的河流峡谷”。但下游的地形生成器、物体生成器、材质系统需要的信息远比这句话多:有哪些区域、区域之间是什么关系、地形类型和高度范围、物体类别和密度、整体视觉风格。

WorldClaw 没有直接把提示塞给生成模块,而是先过一层规划智能体。

意图分析智能体只做一件事:从用户提示里提取显式约束,不补充、不脑补。比如“热带海盗岛屿”会被拆成场景类型(岛屿)、主题(海盗)、关键区域(海岸、聚居地、码头)、视觉风格(热带)这些字段。这一步的目的是把原始提示里的信息结构化成可校验的约束,同时把“用户明确说了什么”和“系统需要补什么”分开。

场景规划智能体负责补全那些用户没说但系统需要的信息。它按照一个预定义的场景规格模式来补:区域列表及其属性、地形要求、物体类别和密度、空间关系。补全的依据是场景类型和内置常识,但补出来的内容不会覆盖用户明确指定的约束。

这个阶段的输出是一份结构化的场景说明 ( \mathcal{P} ) ,包含三块:区域描述 ( \mathcal{R} ) 、地形约束 ( \mathcal{C}{terrain} ) 、物体约束 ( \mathcal{C}{object} ) 。全局属性(主题、视觉风格、材质偏好、环境氛围)作为共享属性附着在对应字段上,确保后续地形生成和物体生成遵循一致的视觉条件。


二、全局地形生成:先搭骨架,再贴皮

有了场景说明,下一步是生成地形基底。WorldClaw 对地形的定位不是“一块平整的地面来放东西”,而是整个世界的空间骨架——它决定区域边界、高程变化、表面外观,以及后期物体生成的空间参照系。

地形生成分成三个子阶段:地形规划、地形素材生成、地形生成与精修。

2.1 地形规划

场景说明 ( \mathcal{P} ) 里虽然有区域和地形要求,但还缺直接建地形所需的细节:区域边界在哪儿、世界多大、每个区域的具体高程和噪声参数、材质怎么实现。

地形规划智能体把 ( \mathcal{P} ) 里的地形相关约束转成一份结构化地形规格 ( \mathcal{P}_{terrain} ) ,包含四部分:

  • 布局规划 ( \mathbf{p}_{layout} ) :区域类别、相对位置、邻接关系、大致覆盖范围。
  • 素材规划 ( \mathbf{p}_{asset} ) :地形相关素材类别(岩石、植被簇、地形附着物)、区域偏好、目标密度。
  • 材质规划 ( \mathbf{p}_{material} ) :各区域的表面类型、视觉风格、纹理需求。
  • 地形参数 ( \pmb{\theta}_{terrain} ) :世界尺度、各区域基准高度、噪声频率和振幅、地貌算子及其权重、边界混合宽度。

当场景说明里出现需要外部知识的概念时,智能体会调用搜索工具检索参考资料。当文字约束不足以表达复杂的空间关系或视觉风格时,智能体会额外生成一张场景概念图作为视觉条件,用于后续的地貌组合、区域布局和艺术风格控制。

2.2 地形素材生成

地形规格是文字形式的,要真正建地形,还需要把文字转成可视化的几何条件和视觉条件。地形素材生成智能体根据 ( \mathcal{P}_{terrain} ) 和可选的概念图,生成四类中间素材:

  • 场景布局图 ( \mathbf{I}_{layout} ) :一张 2D 语义分割图,用不同颜色编码不同地形类别。室内场景常用平面图或结构化房间表示,但自然地形有弯曲边界和不规则形状,所以这里直接用布局图来表达区域分布。后续的高度场生成、材质分配、素材散布都基于这张图。
  • 素材参考图集 ( \mathcal{I}_{asset} ) :针对素材规划里要求的类别(岩石、植被簇、地形附着物),生成一组代表性图像。
  • 3D 素材原型 ( \mathcal{O}_{asset} ) :用 Hunyuan3D 的图像转 3D 能力,把参考图转成可复用的 3D 素材原型。这些原型只提供几何候选,具体的位置、缩放、朝向留到散布阶段决定。
  • 材质集 ( \mathcal{M}_{terrain} ) :定义各区域的表面外观。

2.3 地形生成与精修

有了结构化的地形规格和中间素材包,地形生成智能体开始实际构建地形。

初始高度场生成。

智能体解析场景布局图,把颜色码映射回预定义的地形类别,为每个区域 ( r ) 提取掩码。边界平滑后得到归一化的软权重 ( \tilde{m}_{r} ) ,让高度场生成、材质分配、素材散布共享同一套语义分区。

给定区域级的地形参数,全局高度场表示为:

[
H(\mathbf{x}) = \sum_{r}\tilde{m}{r}(\mathbf{x})\left[h{r} + \sum_{k}w_{r,k}N_{r,k}(\mathbf{x}) + \sum_{j}\alpha_{r,j}G_{r,j}(\mathbf{x})\right]
]

其中 ( \mathbf{x} ) 是地形域内的 2D 位置,( h_r ) 是区域基准高度,( N_{r,k} ) 是特定空间频率的噪声分量,( G_{r,j} ) 是地貌算子(山峰、沙丘、台地、侵蚀等),( w_{r,k} ) 和 ( \alpha_{r,j} ) 控制各自的贡献权重。区域特定的组合方式让不同地貌能形成一个连续复合高度场,同时显式的尺度参数让同一套构建逻辑能适配不同的空间范围。

同样的区域权重还被用来在对应表面分配和混合材质。

全局地形素材散布。

有了基底地形后,用可复用的素材原型补充中等尺度的环境细节。这一步只处理与地形和生态分布紧密相关的基础元素——岩石、植被簇、地形附着物。带有明确功能、实例身份或复杂空间关系的物体推迟到后续的区域物体生成阶段。

对于每个地形素材类别,智能体按照区域偏好和目标密度,在对应的布局掩码内采样候选位置。然后用局部高程、坡度、表面法线来筛选或调整采样实例,最终尺度和朝向适配局部表面,减少浮空、穿透和不自然分布。

地形精修。

初始地形可能还有区域过渡突兀、地貌尺度不一致、纹理比例不匹配、素材分布不自然或局部渲染瑕疵等问题。地形精修智能体通过 BlenderMCP 连接 Blender,从预定义视角重新渲染场景,检查几何、材质、散布结果和渲染配置,然后根据检测到的问题做局部修正。

可编辑的变量包括:区域特定的地形参数、边界混合宽度、材质纹理缩放、素材密度和变换、必要时还包括环境光照和渲染设置。循环持续到没有重大问题或达到预设迭代次数为止。


三、区域物体生成与放置:在需要的地方补内容

全局地形提供了区域级语义和地形基底,但大规模地貌、基础表面外观和地形相关元素只是骨架。带有明确功能和空间关系的细粒度场景物体还没实例化。

WorldClaw 引入了一个区域物体生成与放置模块,只处理那些需要进一步开发的区域。这种方式避免了一次性处理整个场景,同时提供了对区域功能、物体构成、空间布局和视觉风格的细粒度控制。

整个过程分为:区域规划、物体生成与放置、场景精修。

3.1 区域规划

场景说明里的区域集 ( \mathcal{R} ) 和物体要求 ( \mathcal{C}_{object} ) 描述了全局区域组织和高级物体需求,但还没确定哪些区域需要精修,也没给出可执行的区域配置。

区域规划智能体联合检查 ( \mathcal{P} ) 和已生成的地形 ( \mathcal{T} ) ,筛选出那些有未实例化的物体需求且局部地形能支撑这些功能的区域,选出子集 ( \mathcal{R}^{+} \subseteq \mathcal{R} ) 进一步开发。然后把场景级约束精炼成:

[
\mathcal{P}_{regional} = \left{\left(r,\phi_r,\mathcal{C}_r^{object},\mathbf{p}_r^{spatial},\mathbf{p}_r^{appearance}\right)\mid r\in \mathcal{R}^+\right}
]

每个元组 ( \mathcal{P}_r ) 对应一个选中的区域 ( r ) ,包含:功能角色 ( \phi_r ) 、要引入的物体类别/数量/密度 ( \mathcal{C}_r^{object} ) 、物体间和物体与地形的关系 ( \mathbf{p}_r^{spatial} ) 、区域级外观和风格要求 ( \mathbf{p}_r^{appearance} ) 。

区域规划只补场景说明里还没实例化的区域级信息,保留已有的区域语义和关系。当文本约束不足以指定期望外观时,可选的概念图作为视觉参考补充区域规格。

3.2 物体生成与放置

这个阶段分解成三个可复用的技能:区域合成、物体生成、物体放置。

区域合成。

对于每个选中的区域 ( r ) ,智能体先渲染现有地形并记录相机参数,生成一张地形图像 ( \mathbf{I}_{r}^{terrain} ) 。这一步不是为了生成一张孤立的区域图像,而是保留局部地形、材质外观、视角方向和周围空间上下文。

然后把 ( \mathcal{P}_r ) 转成结构化区域提示,在地形渲染、区域规格和可选概念图的条件下生成区域合成图像:

[
\mathbf{I}r^{comp} = \mathcal{G}{image}\left(\mathbf{I}_r^{terrain},\mathcal{P}r,\mathbf{I}{concept}\right)
]

地形渲染和相机参数为保留底层地形和视点提供显式引导,区域规格控制新引入内容的类别、风格、密度和空间关系。合成图像 ( \mathbf{I}_{r}^{comp} ) 不作为最终 3D 几何,而是作为一张显式的 2D 布局先验,在后期的重建和放置阶段同时约束物体外观和空间组织。

物体生成。

区域合成通常包含多个尺度差异明显的物体。把整张图重建为单个 3D 场景会损失实例级重建质量、难以分离物体边界、难以恢复精确放置。

WorldClaw 用文本引导的 SAM3 从 ( \mathbf{I}_{r}^{comp} ) 中提取单个 2D 物体实例。除了全图推理,还用重叠滑动窗口推理来提升跨尺度的召回率。局部预测映射回区域合成图像坐标系后,根据语义标签和空间重叠做去重和合并。

对每个分割出的实例 ( i ) ,通过裁剪和放大对应区域构建物体中心图像 ( \mathbf{I}{i} ) 和掩码 ( S{i} ) 。设 ( A_{i} ) 为从区域合成坐标到物体中心图像坐标的齐次仿射变换。给定区域地形相机的内参 ( K_t ) ,裁剪后的等效内参为:

[
\widehat{K}_i = A_iK_t
]

在齐次图像坐标中,物体中心图像里的像素可以用 ( A_{i}^{-1} ) 映射回区域合成图像。因为裁剪和缩放只修改了图像坐标系,相机外参保持不变。记录 ( A_{i} ) 和 ( \widehat{K}_{i} ) 就保留了原始图像位置及其与地形相机的几何关系。

SAM3D 接收 ( \mathbf{I}{i} ) 和 ( S{i} ) ,预测物体网格 ( M_{i} ) 、外观属性 ( \mathcal{U}{i} ) 、局部到物体相机的变换 ( T{l2c}^{i} ) 、重建相机内参 ( K_{i}^{o} ) 。

单视图重建可能引入尺度偏差,所以做图像空间的尺度校准。设 ( \mathcal{B}(\mathbf{I}) ) 为前景边界框面积与图像面积的比值,参考比值 ( b_{i}^{ref} = \mathcal{B}(\mathbf{I}{i}) ) 。迭代调整绕网格中心的尺度因子 ( \lambda{i} ) ,直到:

[
-\epsilon_{i}^{-}\leq \mathcal{B}(\Pi (K_{i}^{o},\lambda_{i}M_{i}^{c})) – b_{i}^{ref}\leq \epsilon_{i}^{+}
]

其中 ( \Pi(\cdot) ) 表示渲染投影,( \epsilon_{i}^{-} ) 和 ( \epsilon_{i}^{+} ) 控制欠投影和过投影的容忍度。不对称容忍度更强烈地抑制过大的重建,同时允许分割边界和单视图歧义造成的轻微欠覆盖。

3D 放置。

生成每个物体后,用一对对应射线从物体重建相机和区域地形相机恢复其 3D 放置。

从物体中心像素发射一条射线,与相机空间的网格 ( M_{i}^{c} ) 求交,得到物体参考点 ( P_{o} ) 及其深度 ( Z_{o} )。聚焦图像中心用 ( A_{i}^{-1} ) 映射回区域合成图像,从地形相机穿过映射像素发射第二条射线。与地形网格 ( M_{t} ) 的最近正向交点定义目标地形锚点 ( P_{t} ) 及其深度 ( Z_{t} )。

在近似方形像素和局部均匀透视缩放的假设下,保持物体在物体相机和地形相机坐标系中表观大小一致的初始 3D 尺度为:

[
s_{i} = \frac{Z_{t}}{Z_{o}}\frac{f_{i}^{o}}{\hat{f}_{i}}
]

其中 ( f_{i}^{o} ) 是物体重建相机的焦距,( \hat{f}{i} ) 直接从等效内参 ( \hat{K}{i} ) 获取。设 ( R_{i} ) 由两相机外参确定的相对旋转。完整的放置变换为:

[
T_{place}^{i} = \left[ \begin{array}{cc}s_{i}R_{i} & P_{t} – s_{i}R_{i}P_{o}\ \mathbf{0}^{T} & 1 \end{array} \right]T_{l2c}^{i}
]

平移项把 ( P_{o} ) 精确映射到 ( P_{t} )。如果 ( T_{l2c}^{i} ) 已烘焙到导出的网格顶点中,则省略最右边的 ( T_{l2c}^{i} ) 以避免重复变换。

最后,为了减少网格离散化和单视图深度误差造成的轻微浮空,沿地形相机射线联合搜索锚点深度和各向同性尺度,同时保持 2D 投影。搜索在物体底部体素与地形的接触比达到阈值时终止,否则保留接触比最高的候选。

3.3 场景精修

前面的阶段输出了独立物体网格及其初始地形对齐放置,但场景里可能还有物体尺度或姿态不一致、局部几何或外观质量不足、物体与地形接触缺陷(浮空、过度穿透、支撑不稳定)等问题。

场景精修智能体通过 Model Context Protocol(MCP)连接 Blender 等 3D 引擎。它维护一个由诊断渲染和状态报告组成的任务队列,先做物体精修,再做地形精修。

物体精修。

对每个待处理物体,智能体用其语义类别和几何属性,结合周围区域的设计和物体构成,评估姿态、网格质量和尺度。尺度不一致或姿态不合理的物体通过更新放置变换来修正。

对于 SAM3D 重建中几何或外观质量不足的情况,用尺度校准后的粗网格和物体中心图像共同条件 Hunyuan3D。粗网格提供结构约束,图像提供形状和外观线索,让 Hunyuan3D 在限制物体身份和整体形状非预期变化的同时,改善局部表面几何并生成更高质量的纹理或 PBR 材质。精修后的素材继承现有的 ( T_{place}^{i} ),可以直接替换粗重建而无需重复放置。

地形精修。

所有待处理物体精修完后,智能体进入地形精修。这个阶段联合评估地形表面质量以及物体与地形的碰撞和接触,重点关注浮空、过度穿透和支撑不稳定。检测到缺陷时,在局部支撑区域内做物体-地形协同变形——根据物体类别和接触状态,物体可能垂直重新定位或部分嵌入,支撑地形则被局部位移、压平或平滑以适配物体足迹。所有修改限制在支撑区域内,以保护全局地貌和邻近地形结构。

每次编辑后从诊断视角重新渲染场景,根据支撑表面和碰撞检查更新地形报告。精修持续到当前任务通过检查或达到预设迭代预算。


四、实验与对比

WorldClaw 用 Claude Opus 4.8 做底层智能体模型,扩展了任务特定的智能体技能,调用 GPT-Image-2、SAM3、SAM3D、Hunyuan3D 等预训练基础模型和可执行的 3D 工具。物体质量精修时,大物体提供 2048×2048 PBR 纹理贴图,小物体提供 1024×1024。所有实验在 4 张 NVIDIA H20 GPU 的服务器上运行,地形生成、物体生成与放置、场景精修和图像渲染在 Blender 5.1.1 中完成。

四组代表性的生成结果展示了不同地形结构、场景尺度、内容密度和视觉风格:

  • 热带海盗据点:不规则海岸线和分离的陆地区域,密集植被、聚居地、码头和船只分布在不同的沿海区域。
  • 河流峡谷与部落聚居地:连续的河流连接峡谷、谷底、植被和聚居地,跨越显著的高程变化。
  • 沙漠战场:层叠的岩石地貌环绕开阔的作战区域和包含建筑、防御工事、车辆的聚居区。
  • 《命令与征服:红色警戒》风格的雪覆山谷:环绕的山体地形包含多个区域,分布着未来主义设施、通信结构和车辆。

从全局俯瞰视角能看到不同的地貌构成,而不是一堆互不连接的局部场景拼接。局部漫游视角展示了区域特定的内容分布——聚居建筑、植被、码头、防御工事、通信设施、车辆——它们的分布随各地形和功能而变化,同时保留了场景设计需要的开阔区域。对应的实例、深度和法线渲染图暴露了独立的场景组件、地形起伏和显式的物体表面。最终场景在近似水平面和斜坡上都保持了合理的物体尺度、朝向和物体-地形接触。

与 SynCity、Marble、MajutsuCity、WorldGen、GPT-5.6 Sol 的定性对比显示:

  • 地形与区域组织:SynCity 的区域间长程组织和地形类型过渡较弱;Marble 个体视图视觉丰富但缺乏显式区域级组织;MajutsuCity 偏向城市设计,地面几何相对规整;WorldGen 地形相对平坦均质;GPT-5.6 Sol 用相对简单的几何形式实现地形,地貌表现力和区域间过渡较粗糙。WorldClaw 用语义布局图构建连续全局地形,产生明显的高程变化和语义上不同但空间上连接的区域。
  • 内容丰富度与提示对齐:SynCity 部分局部区域结构粗糙或重复;Marble 物体类别相对少;MajutsuCity 以城市结构为主;WorldGen 视图间内容变化有限;GPT-5.6 Sol 用简化或重复几何表示物体,表面细节和风格变化有限。WorldClaw 在需要的地方保留开阔地形,在不同区域选择性引入聚居地、植被、动物和环境物体,内容变化更丰富。
  • 自由视点外观与场景表示:SynCity 和 Marble 的输出主要是场景级表示,不提供独立可控的物体素材。WorldClaw 的场景由独立可控的带纹理网格组成,支持自由视点渲染、素材复用和传统游戏引擎工作流。

五、局限与后续方向

WorldClaw 目前有几个明显的局限:

对底层模型的强依赖。 世界构建被分解成多个阶段,由异构模型协调——大语言模型做规划和程序设计,图像生成模型产生语义布局和区域物体合成,3D 生成模型重建个体素材。这种解耦改善了逐阶段的可控性,但对底层模型的泛化能力要求很高。实验中,当前的开源语言模型经常难以生成既可执行又符合用户需求的程序化地形和材质;开源图像生成模型也经常无法生成可用的语义布局图,或在物体图像生成和提取过程中保持物体外观和姿态。最终场景的视觉质量也直接受限于 3D 生成主干——低精度的几何和纹理明显降低沉浸感。因此在当前阶段完整验证这套解耦流程仍然需要 Claude Opus 4.8、GPT-Image-2、Hunyuan3D 这类能力的模型。

代码生成稳定性风险。 地形的几个阶段依赖 LLM 生成程序——地形构建、程序化材质生成、素材放置、局部精修。把高级自然语言需求一致地翻译成具体程序仍然困难。尺度估计、数值参数或节点连接的错误会直接体现在最终 3D 场景中——不一致的地貌、不准确的材质效果或偏离用户意图的物体布局——经常需要多次“渲染-检查-精修”迭代。这个问题在 Blender 这类专业 3D 创作软件上尤其明显,其 API 和复杂的基于节点的工作流对当前语言模型仍然有挑战。艺术家能用复杂节点图实现的材质效果,在生成程序中往往被简化成相对近似的实现。

场景生成的效率开销。 为了构建有实例级可编辑性的丰富 3D 场景,WorldClaw 单独生成和重建每个物体,并在地形、素材及其接触关系上做多轮智能体精修。这种长周期流程带来显著的推理延迟和计算成本,随物体数量和精修迭代次数增加。虽然这种开销为需要细粒度控制的复杂场景提供了额外的可编辑性,但对简单场景来说,流程可能过于冗长和低效——这类场景用整体生成方法用更少的步骤就能合成。在构建更大或更密集的 3D 世界时,这个效率限制会更明显。

代码驱动的 3D 建模是值得关注的方向。随着基础模型在代码生成、空间推理和工具使用上的持续改进,可执行程序不仅能表示物体几何,还能表示复杂的场景外观。在 WorldClaw 的地形外观生成中,已经尝试了用可执行流程(如 Blender 材质节点图和着色器脚本)构建地形材质,这些代码驱动的材质在保持显式参数化和可编辑性的同时达到了不错的视觉效果。未来可能用可执行的建模程序替换部分物体生成阶段,或者将程序化结构和材质构建与生成式几何和外观先验结合起来。

另一个方向是与更成熟的生产导向场景构建和程序化内容生成工具集成。当前实现主要依赖 Blender,它提供了方便的脚本化几何、材质和渲染接口,但大规模游戏世界构建还需要程序化生成、导航、物理和交互的运行时系统。Unreal Engine 这类游戏引擎提供了更完整的程序化内容生成工具生态和实时场景能力。


操作清单速览

  1. 输入提示:用户提供开放式文本描述。
  2. 意图分析与规划:意图分析智能体提取显式约束 → 场景规划智能体补全缺失信息 → 输出结构化场景说明 ( \mathcal{P} )。
  3. 全局地形生成

    • 地形规划智能体生成结构化地形规格 ( \mathcal{P}_{terrain} )(布局、素材、材质、参数)。
    • 地形素材生成智能体生成布局图、素材参考图、3D 素材原型、材质集。
    • 地形生成智能体构建高度场 → 散布地形素材 → 精修循环(BlenderMCP 连接 Blender)。
  4. 区域物体生成与放置

    • 区域规划智能体选出需精修的区域 ( \mathcal{R}^{+} ) → 生成区域规格 ( \mathcal{P}_{regional} )。
    • 区域合成:渲染地形图像 → 生成区域合成图像 ( \mathbf{I}_{r}^{comp} )。
    • 物体生成:SAM3 分割实例 → 单图重建 + 尺度校准。
    • 物体放置:射线求交恢复 3D 位置 → 尺度缩放 → 锚点深度搜索修正浮空。
  5. 场景精修

    • 物体精修:评估姿态/网格/尺度 → 必要时用 Hunyuan3D 精修 → 更新放置。
    • 地形精修:检测浮空/穿透/支撑 → 局部协同变形 → 迭代验证。
  6. 输出:独立可控的带纹理网格 + 地形,支持自由视点渲染、素材复用、游戏引擎导入。

FAQ

Q:WorldClaw 生成的世界是啥格式?我能单独导出某栋建筑或某棵树吗?
A:最终输出是显式的地形网格和独立的实例级带纹理网格。每个物体有自己的几何、材质和放置变换,可以单独导出、编辑或复用,不是一张合在一起的死图。

Q:它和直接用 Blender 程序化生成有啥区别?
A:WorldClaw 用智能体做决策和协调——它根据文本提示自己规划区域布局、选材质参数、决定在哪儿放什么东西、检测浮空并修正。传统程序化生成需要人写规则和调参数。但 WorldClaw 内部的地形高度场和材质生成仍然会调用程序化方法,只是调用逻辑由智能体驱动。

Q:SAM3D 单图重建出来的物体精度够用吗?
A:单图重建本身有尺度歧义和几何缺失问题,所以 WorldClaw 做了两步补偿:第一步是图像空间的尺度校准(用 bounding box 面积比来调尺度),第二步是放置时用射线求交把物体锚定到地形表面。如果质量还不够,精修阶段会用 Hunyuan3D 以粗网格加图像为条件重新生成更精细的几何和纹理。

Q:物体放置时浮空怎么处理的?
A:放完之后会做一次沿地形相机射线的联合搜索,同时调锚点深度和各向同性尺度,保持 2D 投影不变的情况下让物体底部与地形接触。如果还有轻微浮空,精修阶段会在局部支撑区域做物体-地形协同变形。

Q:一个场景生成要多久?
A:取决于物体数量和精修迭代次数。论文里的实验在 4×H20 上跑,但没给具体时间。因为每个物体单独重建和放置,加上多轮精修循环,复杂场景的时间开销确实不小。论文也把“效率开销”列为主要局限之一。

Q:一定要用 Claude Opus 4.8 吗?开源模型行不行?
A:论文明确说当前开源语言模型在地形和材质的程序化生成上经常失败,开源图像模型在布局图和物体外观保持上也经常出问题。所以现阶段要复现完整效果确实需要商业模型。如果换成开源模型,可能需要接受更低的地形可执行性和视觉质量。

Q:材质是怎么生成的?能改吗?
A:材质通过程序化方式生成——智能体生成 Blender 材质节点图或着色器脚本来定义表面外观。这些材质是显式参数化的,可以在 Blender 里直接改节点参数。论文里提到这是代码驱动 3D 建模的一个探索方向。

Q:生成的场景能在 Unreal Engine 里用吗?
A:输出是显式网格和材质,可以导入 UE。但目前实现主要基于 Blender 的脚本接口,还没有直接对接 UE 的程序化生成管线。论文把“与 UE 等游戏引擎集成”列为未来方向。