对高质量 3D 资产的需求正在呈爆炸式增长。从视频游戏和虚拟现实的沉浸式世界,到建筑可视化和电影制作的实际应用,对细节丰富、逼真的 3D 模型的需求比以往任何时候都高。传统上,创建这些资产是一个劳动密集型的瓶颈,需要熟练的艺术家手动雕刻几何形状、绘制纹理并调整材质属性。

近年来,生成式 AI 承诺将这一流程自动化。我们已经看到了可以将文本转化为 3D 形状,或将单张图像转化为旋转网格的模型。然而,在 AI 生成的内容与专业图形引擎实际需求之间仍存在显著差距。大多数当前的 AI 模型生成的都是“烘焙” (baked) 资产——即颜色直接绘制在顶点上的网格。它们看起来通常像塑料玩具或橡皮泥模型,缺乏真实感渲染所需的复杂材质属性 (例如金属的光泽度与橡胶的哑光度对比) ,即所谓的物理渲染 (PBR) 。

3DTopia-XL 应运而生,这是在 CVPR 上发表的一项新框架,旨在弥合这一差距。该论文介绍了一种可扩展的原生 3D 生成模型,能够生产高质量的“基于物理的渲染” (PBR) 资产。通过利用一种名为 PrimX 的新型数据表示法和强大的扩散 Transformer (DiT) ,3DTopia-XL 不仅仅是在生成形状;它还在一个统一、高效的流程中生成材质、纹理和几何结构。

在这篇文章中,我们将解构 3DTopia-XL 的工作原理,探讨为什么其独特的表示法是一个游戏规则改变者,并看看它所取得的惊人成果。

图 1. 3DTopia-XL 生成具有平滑几何结构以及空间变化纹理和材质的高质量 3D 资产。输出资产 (GLB 网格) 可以无缝移植到图形引擎中进行基于物理的渲染。

当前 3D 生成技术的问题

要理解 3DTopia-XL 的创新之处,我们首先需要看看目前最先进技术的局限性。现有方法通常分为三类:

  1. 分数蒸馏采样 (SDS) : 这些方法 (如 DreamFusion) 使用 2D 扩散模型 (如 Stable Diffusion) 通过优化过程来“雕刻”3D 形状,直到它从各个角度看起来都正确。虽然具有创新性,但这个过程很慢,通常会导致“卡通化”的几何形状,并且难以处理光照伪影。
  2. 稀疏视图重建: 像 LRM (大型重建模型) 这样的方法获取一张图像并尝试直接回归出 3D 形状,通常使用“三平面 (Triplane) ”表示法。虽然速度快,但三平面在内存上效率低下。由于参数空间有限,它们难以表示高分辨率的细节。此外,这些方法是确定性的——它们是重建出一个结果,而不是生成多样化的变体。
  3. 原生 3D 扩散: 这些模型直接在 3D 数据上进行训练。然而,3D 数据很难有效地表示。体素 (3D 像素) 是内存消耗大户 (立方复杂度) 。点云则缺乏表面连接性。

至关重要的是,这些方法中很少有能解决 PBR (基于物理的渲染) 问题的。专业的 3D 资产不仅仅是形状和颜色;它需要 粗糙度 (Roughness) (微表面细节) 、金属度 (Metallic) (反射率) 和 法线 (Normal) (表面凹凸) 贴图。没有这些,资产在游戏引擎中看起来就会平坦且不真实。

核心创新: PrimX

研究人员意识到,要扩展 3D 生成,他们需要一种更好的方式来表示 3D 数据——既要高效、富有表现力,又要与深度学习兼容。他们的解决方案是 PrimX

什么是图元 (Primitive) ?

在标准的体素方法中,你将 3D 空间划分为巨大的网格。大部分网格都是空的空气,这对计算来说是一种浪费。在 PrimX 中,研究人员将对象表示为一组 \(N\) 个图元 (primitives)

可以将图元想象为一个“微小体素”或积木。这些图元不是固定的网格,而是专门锚定在网格表面上的。

图 2. PrimX 图解。我们建议将带纹理网格的 3D 形状、纹理和材质表示为一个紧凑的张量。我们将 N 个图元锚定在网格表面采样的位置上。

如上图 2 所示,该过程如下:

  1. 输入: 一个带纹理的网格 (形状 + 反照率 + 材质) 。
  2. 快速张量化: 网格被转换为 \(N\) 个图元 (在图中表示为彩色立方体) 。
  3. 图元载荷 (Payload) : 每个图元 \(\mathcal{V}_k\) 包含打包进张量的丰富信息:
  • 位置 (\(\mathbf{t}_k\)) : 它在 3D 空间中的位置。
  • 缩放 (\(s_k\)) : 这个块有多大?
  • 特征 (\(\mathbf{X}_k\)) : 一个包含 SDF (用于形状的符号距离函数) 、RGB (颜色) 和 材质 (粗糙度/金属度) 的特征网格。

通过叠加这些图元,模型可以重建完整的 3D 对象。这种表示法是 稀疏的 (它只存在于对象存在的地方) 并且是 张量化的 (它可以很容易地被神经网络处理) 。

为什么 PrimX 更优越

研究人员将 PrimX 与三平面、密集体素和 MLP 等其他流行表示法进行了比较。结果如图 4 所示,令人震惊。

图 4. 不同 3D 表示法的评估。PrimX 在几何和外观方面实现了最高的保真度,同时在运行时效率方面具有显著优势。

请注意,中间的 Triplane (三平面) 方法导致了模糊的面部和块状伪影。 MLP 方法在处理高频细节时很吃力。而 PrimX (绿色框) 捕捉到了怪兽面部清晰的轮廓和特定的纹理细节,与 Ground Truth (真值) 非常匹配。

论文中的表 1 (在上图中引用) 强调,PrimX 在实现这种质量的同时,拟合速度比第二好的方法 快 7 倍 。 它可以在大约 1.5 分钟内拟合出一个高质量的资产。

引擎: 3DTopia-XL 框架

有了 PrimX 提供紧凑的 3D 数据存储方式,研究人员构建了一个生成框架来从头开始创建这些数据。该架构 3DTopia-XL 由两个主要阶段组成: 图元块压缩 (Primitive Patch Compression)潜在图元扩散 (Latent Primitive Diffusion)

图 3.3DTopia-XL 概览。作为原生 3D 扩散模型,3DTopia-XL 建立在一种新颖的 3D 表示法 PrimX 之上。

1. 图元块压缩 (VAE)

尽管 PrimX 很高效,但生成原始的高分辨率 3D 数据在计算上仍然很昂贵。为了解决这个问题,作者使用了 3D 变分自编码器 (VAE)

看图 3 的左侧,VAE 接收 PrimX 数据 (\(N \times D\) 张量) ,并将每个图元的局部特征压缩成一个更小的“潜在 (latent) ”向量。这类似于 Stable Diffusion 将像素压缩为潜变量的方式。这一步显著降低了数据的维度,使得扩散模型的训练成为可能。

2. 潜在图元扩散 (DiT)

生成过程的核心是 潜在图元扩散 模型 (图 3 中间) 。作者选择了 扩散 Transformer (DiT) 架构,而不是图像生成中常用的标准 U-Net。

为什么选择 Transformer?

  • 基于集合的数据: PrimX 本质上是一 图元。Transformer 非常擅长处理序列或标记 (token) 集合。
  • 可扩展性: 随着数据和参数的增加,Transformer 的扩展性非常好。

DiT 将每个压缩的图元视为一个 token。它使用自注意力机制 (Self-Attention) 来理解 3D 对象不同部分之间的关系 (例如,“如果这里有一条腿,那里应该有一个身体”) ,并使用交叉注意力机制 (Cross-Attention) 来整合 条件 (Condition) (你的文本提示词或输入图像) 。

模型学习从随机噪声开始,迭代地将其“去噪”,最终形成一组代表 3D 对象的结构化图元。

从张量到游戏资产: PBR 提取

这篇论文最实用的贡献之一是将生成的 PrimX 张量转换回可用的 3D 文件 (GLB) 的流程。

许多 AI 模型止步于“顶点着色”——即直接将颜色绘制在几何点上。这在查看器中看起来还可以,但在游戏引擎中效果很差,因为分辨率取决于几何密度。

3DTopia-XL 采取了不同的方法:

  1. 几何提取: 它在 SDF 场上使用“移动立方体 (Marching Cubes) ”算法来提取干净的网格。
  2. UV 展开: 它生成高分辨率的 UV 贴图 (1024x1024) 。
  3. 纹理采样: 它将 RGB 和材质值从 PrimX 场采样到此 UV 贴图上。
  4. 修复 (Inpainting) : 它智能地填充间隙以防止锯齿伪影。

这产生了一个标准的 GLB 文件,其中包含用于反照率 (颜色) 、粗糙度和金属度属性的独立贴图。

实验与结果

效果如何?结果表明是非常成功的。

图像到 3D 生成

当给定单张图像时,3DTopia-XL 可以生成一个完整的 3D 模型,该模型既忠实于输入,又能合理地想象出不可见的侧面。

图 5. 图像到 3D 比较。3DTopia-XL 实现了最佳的视觉和几何质量。由于我们能够生成如最右侧所示的空间变化 PBR 资产,我们生成的网格还可以产生带有镜面高光和光泽度的生动反射。

在图 5 中,将 Ours 列 (3DTopia-XL) 与 LGMCRM 等竞争对手进行比较。

  • 看那个 橘子大象 (中间行) 。其他方法生成的是一个平坦的橘色形状。3DTopia-XL 捕捉到了橘子皮皮肤的凹凸纹理。
  • 渲染效果 。 因为 3DTopia-XL 生成了粗糙度和金属度贴图 (显示在最右侧) ,大象能逼真地反射光线。其他模型看起来则是哑光且假的。

文本到 3D 生成

该模型还能够根据纯文本描述生成资产。

图 9. 3DTopia-XL 可以直接从文本生成 3D 资产,而不依赖于 2D 文本到图像扩散模型。请注意我们方法生成的采样多样性和空间变化的材质。

在图 9 中,像“一个粉色糖霜甜甜圈”这样的提示词生成了具有独特材质属性的详细几何结构——糖霜看起来很有光泽 (低粗糙度) ,而面团看起来是哑光的。这种分离材质的能力是这种以 PBR 为中心的方法所独有的。

生成多样性

与试图为图像找到“一个真实形状”的重建模型 (如 LGM) 不同,3DTopia-XL 是一个概率生成模型。这意味着对于单个输入,它可以生成多个有效的变体。

图 14. 采样多样性。给定相同的输入图像,3DTopia-XL 可以仅通过改变随机种子来生成多样化的 3D 资产。放大查看多样的形状和空间变化的 PBR 材质。

在图 14 中,给定一张独角兽的图片 (底行) ,模型生成了几个变体。从正面看它们都像输入图像,但几何形状和纹理的具体细节略有不同,给了艺术家更多选择。

结论与启示

3DTopia-XL 代表了自动化 3D 内容创作向前迈出的重要一步。通过摒弃低效的表示法并采用基于图元的方法 (PrimX) ,研究人员实现了高分辨率、PBR 就绪资产的生成。

主要收获:

  • PrimX 很强大: 它结合了体素和显式网格的优点,能够高效地学习形状、颜色和材质。
  • 物理很重要: 将 PBR 属性 (粗糙度/金属度) 直接集成到生成流程中,对于创建在现代引擎中看起来“真实”的资产至关重要。
  • 可扩展性: 扩散 Transformer (DiT) 的使用证明,只要我们有正确的数据表示法,我们在文本和图像生成中看到的“缩放定律”也适用于 3D。

对于计算机图形学的学生和研究人员来说,这项工作凸显了数据表示法的重要性。架构 (DiT) 是标准的,但 数据呈现给网络的方式 (PrimX) 解锁了性能。随着我们迈向元宇宙和日益复杂的数字孪生,像 3DTopia-XL 这样的技术可能会成为填充虚拟世界的标准。