
这项由腾讯混元团队联合浙江大学、清华大学、香港中文大学、香港科技大学及香港大学共同完成的研究,以预印本形式于2026年6月25日发布在arXiv平台,论文编号为arXiv:2606.30673。有兴趣深入了解技术细节的读者可以通过该编号查询完整论文。
一、从"捏泥人"到"精雕细刻":3D网格生成是个什么难题?
游戏里的人物角色为什么看起来那么流畅?电影里的特效为什么能和真实画面无缝融合?背后有一个关键角色几乎从未走进公众视野,那就是多边形网格——一种由无数小三角形或多边形片面拼接而成的数字皮肤,包裹在3D模型表面。这层"皮肤"不仅决定了模型的外观,更决定了计算机能否高效地对它进行渲染、物理模拟,以及艺术家能否方便地修改它的形状。
专业3D艺术家花费大量时间做的一件事叫做"拓扑重建",也就是retopology。具体来说,当一个3D扫描仪扫出来的原始模型,往往是密密麻麻、毫无规律的三角形堆砌,就像一堆随意撒落的碎玻璃片。而艺术家要做的,是把这堆碎玻璃重新拼成一幅结构清晰、可以流畅弯曲变形的马赛克画——每一块拼片的大小、方向、排列都要经过精心设计,这样模型在动画中弯曲时才不会出现破面、撕裂或者奇怪的扭曲。这个过程耗费时间惊人,有时一个角色的拓扑重建就需要一名熟练艺术家花费数天甚至数周时间。
正因如此,学术界和工业界都在寻找"让机器自动完成这件事"的方法。过去几年里,一类叫做自回归Transformer(可以理解为一种逐字逐句生成文本的AI模式,只不过这里生成的不是文字而是网格结构)的模型成为主流。这类方法把3D网格拆解成一串数字序列,然后像ChatGPT写文章一样,一个接一个地生成序列中的每个元素。PolyGen、MeshGPT、MeshAnything等一系列模型沿着这条路越走越远,生成质量越来越高,但始终有一个根本性的瓶颈无法突破:它们必须一步一步顺序生成,速度慢得像在用算盘做加法。生成一个中等复杂度的网格可能需要数分钟,而图像生成AI早就能在不到一秒内画出高分辨率图片。
这里的核心矛盾是什么呢?在图像、音频、视频这些领域,研究者已经发展出了非常高效的"扩散模型"和"流匹配模型",这类模型可以同时处理所有像素,并行生成整张图片,速度极快。然而,网格有一个独特的麻烦:除了顶点坐标这种连续数值,它还有"拓扑连接关系"——也就是哪个顶点和哪个顶点之间有边相连。这种连接关系是非此即彼的,要么有边,要么没边,是彻彻底底的离散信息。而扩散模型和流匹配模型天生只能处理连续的、可以加减噪声的数值,面对"有边/没边"这种二元选择完全束手无策。
PolyFlow的诞生,正是为了打破这道横亘在3D网格自动生成领域的高墙。
二、一把神奇的"翻译器":把离散的拓扑关系变成连续的坐标
PolyFlow整个技术方案的核心秘密,是一个叫做"拓扑嵌入器"的小型神经网络。理解它是理解整个研究的关键,而理解它其实并不难——可以用一个非常直觉的比喻来帮助思考。
假设你面前有一张城市地图,上面标注了很多建筑物,以及建筑物之间是否有道路直接相连。"有路相连"和"没有直接道路"就是那种二元的、离散的信息。现在,研究团队做了一件巧妙的事:他们给每栋建筑物分配了一个特殊的"坐标标签",这个标签不是普通的经纬度,而是一种在某个虚拟空间里的位置编码。神奇的规则是:两栋建筑如果有路直接相连,它们在这个虚拟空间里的"特殊距离"就会很近;如果没有路相连,这个"特殊距离"就会很远。
这样一来,原本"有路/没路"这种离散的关系,就被转换成了"虚拟空间中的距离"这种连续的数值信息。任何连续生成模型都可以处理这种连续数值,生成完成后,只需要看一下各顶点的虚拟坐标之间的距离,距离近的就说明有边相连,距离远的就说明没有边——离散的拓扑关系就这样被完美还原出来了。
这个"虚拟空间中的特殊距离"在论文中叫做"时空距离",它借鉴了物理学中时空度量的概念。具体来说,每个顶点的嵌入向量被分成两部分:一部分叫做"空间分量",另一部分叫做"时间分量"。两个顶点之间的时空距离等于它们空间分量的普通欧氏距离的平方,再减去时间分量的欧氏距离的平方。这种带有减号的奇特度量方式,在数学上叫做伪黎曼度量,研究团队引用了SpaceMesh这一先前工作的发现——这种度量方式在重建图的连接关系时,收敛速度比普通的欧氏距离快得多。当时空距离小于某个阈值时,就判定两个顶点之间有边相连;反之则没有边。
拓扑嵌入器的训练过程也很有意思。它接收每个顶点的三维坐标和表面法向量作为输入,然后为每个顶点生成一个32维的连续向量(就是上面说的那个"特殊坐标标签")。训练时,模型需要做到的是:对于真实网格中已知有边相连的顶点对,让它们生成的嵌入向量之间的时空距离小于某个阈值;对于没有边相连的顶点对,让时空距离大于这个阈值。这个训练目标通过一种叫做二元交叉熵损失的方式来数学化表达,负样本(即没有边连接的顶点对)从三类不同的顶点对中随机抽取:完全随机的顶点对、空间位置上相近但没有边的顶点对、以及拓扑上相邻几跳但没有直接边的顶点对。这三类负样本的混合使用,确保了嵌入器能够区分各种容易混淆的情况。
拓扑嵌入器一旦训练完成,就被"冻结"起来,参数不再更新,作为一个固定的特征提取工具使用。在后续的整个生成过程中,它的作用就是把网格的离散拓扑信息提炼成连续的向量,为流匹配模型的工作铺平道路。
三、并行"雕刻":PolyFlow如何同时生成几何与拓扑?
有了拓扑嵌入器这把"翻译器",PolyFlow就可以把一个完整的3D网格变成一种全新的数学表示形式。对于网格中的每一个顶点,研究团队将三样东西拼接在一起:顶点的三维坐标(x、y、z三个数字)、顶点处的表面法向量(描述曲面朝向的三个数字),以及拓扑嵌入器生成的32维连续嵌入向量。这样,每个顶点就变成了一个38维的连续向量,而整个网格就变成了一个由若干行这样的向量组成的矩阵。至关重要的一点是,这个矩阵中的每一个数字都是连续的——没有任何离散的成分。流匹配模型终于可以大显身手了。
PolyFlow采用的流匹配框架,可以这样理解:假设你手里握着一把沙子(这代表高斯噪声,也就是完全随机的初始状态),你的目标是把这把沙子塑造成一个精美的沙雕(代表真实的网格数据)。流匹配模型学习的就是一个"速度场"——它告诉沙粒们,在每个时刻应该朝哪个方向、以多快的速度移动,才能逐渐从混沌走向有序。数学上,这个过程通过求解一个常微分方程来实现,从时间t=0(纯噪声)积分到t=1(目标数据)。训练时,模型通过最小化预测速度与真实速度之间的差距来学习这个速度场;推理时,只需要从噪声出发,按照速度场的指引一步步走向目标即可。
PolyFlow的流匹配模型是一个基于Transformer架构的神经网络,具体来说采用了类似Flux(一种知名图像生成模型)的双流DiT设计,包含12个双流模块和24个单流模块,隐层维度为768,16个注意力头。这个模型接受三样东西作为输入:当前时刻带有噪声的顶点状态矩阵、当前时刻的时间步t,以及来自点云条件编码器的条件特征向量。条件特征来自一个预先训练并冻结的点云变分自编码器(来自腾讯混元3D-Omni项目),它将输入的40960个表面点云点编码为2048个1024维的条件向量。
训练时,模型的损失函数对三种不同的通道分别赋予不同的权重:坐标通道的权重为2.0,法向量通道的权重为0.5,拓扑嵌入通道的权重为1.0。这种差异化的权重设置,反映了不同类型的信息对最终网格质量的不同重要性。训练在64块GPU上进行,使用AdamW优化器,批量大小为每卡1个样本,学习率为万分之一,并维护了一份指数移动平均(EMA)的模型权重用于推理,EMA衰减系数为0.9999。
推理阶段的流程非常直观。用户提供一个输入点云(描述目标物体的大致形状),同时指定希望生成的顶点数量。系统随机初始化指定数量的顶点向量(每个都是38维的高斯噪声),然后用欧拉方法求解常微分方程,经过50个积分步骤,这些噪声向量逐渐被塑造成有意义的顶点状态。整个过程对所有顶点完全并行进行,没有任何顺序依赖。
生成完成后,经过积分的38维向量被拆分回三个部分:坐标、法向量、拓扑嵌入。拓扑嵌入被用于重建网格的连接结构:计算所有顶点对之间的时空距离,距离低于阈值的顶点对就被连接起来形成边;然后在边集合上寻找所有三角形(即找所有三个顶点两两相连的情况),得到面的列表。此外,生成的法向量还被用来纠正每个三角面片的朝向——通过比较几何法线与生成法线的点积,可以判断面片是朝外还是朝里,从而统一修正所有面片的绕向,确保网格表面朝向一致。对于边界处的小洞(边数不超过8的洞),系统还会用耳切法自动填补,并用同样的法向量引导方法确定填补面片的朝向。
四、从5百万网格中学习:训练数据与评测结果
PolyFlow的训练数据规模相当可观。研究团队从公开仓库和授权3D资产库中汇集了约500万个网格进行训练。评测则使用了Toys4K数据集,这是一个包含多种类别3D玩具物品的基准测试集,其中的物品都未曾出现在训练数据中,能够客观衡量模型的泛化能力。
在定量指标上,PolyFlow的表现相当亮眼。研究团队使用倒角距离(CD)和豪斯多夫距离(HD)来衡量生成网格与真实网格之间的几何误差——这两个指标都是从生成网格和真实网格各采样1024个点后计算得到的,数值越小代表几何越忠实。与自回归方法中的翘楚BPT相比,PolyFlow在CD上低了43%(0.008对0.014),在HD上低了40%(0.021对0.035)。与其他基线相比,PolyFlow同样全面领先:MeshAnythingV2的CD为0.132,FastMesh为0.130,DeepMesh为0.016,而PolyFlow只有0.008。CD的标准差也最低(0.001),说明生成质量非常稳定,不会出现时好时坏的情况。
速度方面的优势同样显著。在单块NVIDIA A100 GPU上,生成1000个顶点的网格,BPT估计需要约138.6秒,FastMesh需要10.39秒,而PolyFlow只需要2.43秒。生成4000个顶点时,BPT估计需要约554.5秒(超过9分钟),FastMesh需要36.72秒,PolyFlow只需5.88秒——比FastMesh快6.2倍,比BPT快约百倍。更关键的是,后处理步骤(时空距离解码和面片提取)的开销极小,在4000顶点时只需约66毫秒,几乎可以忽略不计。
从视觉质量的角度来看,BPT和FastMesh在处理复杂形状时频繁出现破面、缺失部分或比例失真的情况,尤其在龙形和飞船等细节丰富的物体上问题突出。DeepMesh借助强化学习改善了结构完整性,但在细薄结构和精细细节上仍有明显瑕疵。PolyFlow在所有测试形状上都能生成拓扑最干净、几何最忠实的网格,无论是整体轮廓还是局部表面细节都得到了很好的保留。
研究团队还专门对比了顶点分布情况。FastMesh通过两阶段自回归流程生成顶点,倾向于在几何复杂的区域产生明显的聚集现象——顶点扎堆,分布不均匀。PolyFlow的并行流匹配则产生更接近真实艺术家拓扑的顶点分布,空间覆盖均匀,顶点精确落在表面特征边缘等关键位置。
五、"随心调分辨率":PolyFlow独有的顶点数量控制能力
PolyFlow有一个自回归方法天然无法实现的能力:用户可以在生成之前,直接指定生成网格包含多少个顶点。
这种能力听起来简单,实际上意义深远。在现有的自回归方法中,序列长度虽然也在某种程度上影响输出复杂度,但想要精确控制输出网格的顶点数量是非常困难的。而PolyFlow的设计天然支持这一点——用户指定多少个顶点,系统就初始化多少个噪声向量,并行地把它们全部去噪成目标状态。多一个顶点都不会有,少一个顶点也不会有。
研究团队展示了对同一棵树模型在顶点数250到3000之间五个不同级别的生成结果。在250个顶点时,模型产生一个粗糙但形状可辨的近似,主要资源集中在树冠轮廓和树干这些最重要的几何特征上。随着顶点数增加到500、1000、2000,枝干和树冠的细节逐步涌现,树干的曲面也变得更加光滑。到3000个顶点时,精细的枝桠结构都清晰可见。贯穿整个分辨率范围,整体形状保持几何上的一致性,说明流模型学到的是一种"对分辨率有感知的分布",而不是简单地把更多点随机撒在表面上。这种能力对于游戏、影视等需要同一资产在不同平台以不同精度呈现的场景来说,具有非常实际的价值。
六、消融实验:32维嵌入是甜蜜点
研究团队对拓扑嵌入维度进行了系统性的消融实验,分别测试了8维、16维、32维和64维四种设置。
在8维时,嵌入空间太小,无法有效区分相邻的顶点,导致拓扑嵌入的精确率只有0.4292(也就是说很多错误的边被预测为存在),尽管召回率很高(0.9969,即真实存在的边基本都被找到了),F1综合得分只有0.6000。生成的网格在视觉上呈现出严重扭曲的几何,面片大量纠缠在一起。
提升到16维后,精确率大幅改善至0.9414,F1达到0.9697,整体形状可以恢复,但在肢体部位仍能看到一些错误的长程连接边。
到了32维,精确率0.9983,召回率几乎完美(1.0000),F1高达0.9991,端到端生成的CD为0.008,HD为0.021,视觉上与输入网格几乎无法区分。
继续提升到64维,边重建的F1进一步小幅改善到0.9996,但端到端生成的HD反而从0.021上升到0.025。研究团队分析认为,这可能是因为更大的流状态(38维变为70维)增加了去噪器的学习难度,却没有提供有意义的额外拓扑信息。因此,32维被选定为最终配置,在拓扑重建保真度与下游生成质量之间取得了最佳平衡。
七、对比SpaceMesh:站在巨人肩膀上的跨越
PolyFlow的拓扑嵌入思路借鉴自SpaceMesh这一先前工作,后者同样使用时空距离来表示网格拓扑。但两者之间存在本质上的不同。
SpaceMesh是一个独立的拓扑预测方法,它在已知顶点位置的情况下,通过Transformer来预测哪些顶点之间应该有边,但受限于Transformer二次方的内存消耗,只能处理约2000个顶点以下的网格,而且拓扑预测是几何生成之后的独立后处理步骤,两者之间没有联合优化。
PolyFlow则把连续拓扑嵌入直接融入生成状态的一部分,与几何(坐标和法向量)并行地由同一个流模型共同生成。这意味着拓扑和几何是同时被学习、同时被优化的,模型可以学到几何特征与拓扑结构之间的深层关联。此外,PolyFlow的并行生成架构理论上不受顶点数量的严格限制(实践中上限由GPU内存决定),可以处理比SpaceMesh更大的网格。
与其他替代方案相比,DMesh通过可微分的Delaunay三角剖分概率来表示拓扑,但Delaunay方法有内在限制——它只能产生特定类型的三角剖分,无法重现艺术家有意设计的那种非Delaunay的、具有特定艺术意图的连接方式。PointTriNet则用局部PointNet分类器来提议和验证候选三角形,这是一种自底向上的、局部的方法,同样难以捕捉全局的拓扑意图。PolyFlow的连续嵌入方法没有这些内在限制,原则上可以表示任意的艺术家风格拓扑。
说到底,PolyFlow做的事情,可以用一句话来总结:它找到了一种聪明的"语言",把只有艺术家才能描述的网格连接结构,翻译成了AI最擅长处理的连续数学形式,然后用当下最高效的并行生成技术把这套语言用起来,最终让机器在几秒钟内做到了人类艺术家需要数天才能完成的事情。
这项研究最直接的影响在于3D内容创作流程的提速。对于游戏公司、影视特效团队、虚拟现实内容制作者来说,网格拓扑重建一直是流程中最耗时的瓶颈之一。如果这类技术成熟落地,艺术家可以将更多时间花在创意决策上,而非繁琐的手工操作。同时,精确的顶点数量控制能力,让同一套流程可以直接服务于从手机游戏到电影级别的不同精度需求。
当然,这项研究也有其局限性:目前主要在三角网格上验证,四边形网格(游戏工业中同样常用)的支持需要进一步扩展;此外,面对极其复杂的高分辨率网格(如超过一万个顶点),并行处理的内存开销也是一个需要持续优化的问题。PolyFlow所展示的方向,为后续研究者留下了相当多值得探索的空间——比如能否把这套并行生成思路推广到四边形网格,能否进一步提升对极复杂形状的处理能力,都是自然延伸的方向。
对这项研究感兴趣的读者,可以通过arXiv:2606.30673查询完整论文,其中包含了完整的数学推导、实验细节和更多可视化结果。
Q&A
Q1:PolyFlow生成的网格和普通AI生成3D模型有什么区别?
A:普通AI生成的3D模型往往是密集的三角形堆砌,结构杂乱,不适合直接用于游戏或影视制作。PolyFlow生成的是经过拓扑重建的、具有艺术家风格的干净网格,连接结构清晰有规律,可以直接用于渲染、动画和物理模拟,省去了费时费力的手工整理步骤。
Q2:拓扑嵌入器的32维设置是怎么确定的?
A:研究团队做了对比实验,分别测试了8维、16维、32维、64维四种设置。8维时嵌入空间太小,边重建质量差,网格严重变形;16维有所改善但仍有错误;32维达到F1值0.9991的近乎完美水平,端到端生成质量也最好;64维在边重建上仅略有提升,但实际生成的网格质量反而下降,可能是因为维度更高让去噪模型更难学习。最终选定32维作为最优配置。
Q3:PolyFlow能精确控制生成多少个顶点吗?
A:可以。用户在生成之前直接指定目标顶点数量,PolyFlow就会初始化对应数量的噪声向量并全部并行去噪,输出的网格顶点数与指定数量完全一致。论文展示了同一个树模型在250到3000个顶点之间五个级别的生成结果,形状在不同分辨率下保持几何一致性,细节随顶点数增加而逐步丰富。
好文章,需要你的鼓励
这项研究系统比较了四种AI图像分词策略在640000张星系图像上的表现,发现重建质量与物理属性预测能力之间存在根本性解耦,为天文基础模型的分词器选择提供了实验依据。
阿里Qwen团队研究如何将大模型的规模化训练思路迁移到机器人操作领域,通过统一多机器人表示与38100小时数据预训练,让机器人在陌生场景和陌生机型上也能完成复杂操作任务。
MemoBench是哈佛大学等机构联合推出的视频生成评测基准,专测AI在物体消失再重现场景下的记忆能力,揭示了当前所有主流模型的核心盲区。
研究发现AI代码修复工具默认的"写代码→跑测试→再改"流程中,禁止运行测试几乎不影响修复成功率,却能节省超过一半的时间和费用。