图形学 · GraphicsNote

点云渲染

Point Cloud Rendering

更新于 2026-10-28 约 5 分钟点云溅射QSplatsurfel分层点云眼罩光照

点渲染用大量互不连接的三维点表示表面,每个点画成有半径的"溅射斑" (splat)。随着激光扫描、LIDAR、深度相机和摄影测量普及,点云数据可达数千亿点,因此几乎所有系统都用层次结构按预算加载和显示,并用不透明溅射、屏幕空间 AO 或眼罩光照 (EDL) 给无法线的点着色(RTR4 13.9 节)。

背景

  • Levoy 与 Whitted (1985) 提出把点作为渲染一切的新图元:渲染大量点,再用高斯滤波填补间隙,滤波半径取决于表面点密度和屏幕投影密度。
  • 约 15 年后复兴:算力足以交互渲染,激光测距扫描提供了极高细节模型。现在数据来自航空 LIDAR、Kinect、iPhone TrueDepth、Tango、自动驾驶 LIDAR(每秒数百万点)、摄影测量等,原始输出是带强度或颜色(有时带建筑/道路等分类)的三维点。

经典系统

系统结构要点
QSplat (2000)球体层次,节点压缩可渲染数亿点;溅射形状可为方形、不透明圆、模糊圆;任何层都可停止遍历,该层节点按其球半径渲染,层次保证无空洞;时间用完即停,静止时逐步细化到叶子
Surfel (Pfister 等)八叉树存位置、法线、过滤纹素表面元素总带法线;投影后用可见性溅射填洞
分层点云 (Gobbetti 与 Marton)每个节点约 nn 个点,一次 API 调用渲染不生成"平均"假点,更适合 GPU

分层点云的构建:从全集中取 nn 个点作根(点间距大致均匀比随机选好,也可按法线或颜色差异选),其余按空间分到两个子节点,递归直到每个子节点不超过 nn 个点。显示时按节点相对屏幕大小决定加载优先级并估计公告板大小,直到达到限制。内存与存储的点数成正比;缺点是放大到某个子节点时,所有父节点即使只有少量点可见也要送入管线。地形数据更适合四叉树。

神经点基表示:3DGS 与 4DGS

  • 3D Gaussian Splatting (3DGS) 把稀疏相机标定点优化成带位置、各向异性协方差、透明度和视角相关颜色(球谐系数)的三维高斯。高斯投影为屏幕椭圆核,按 tile 分桶并按深度进行 alpha 合成;训练阶段用 clone、split、prune 调整表示容量,避免 NeRF 式空空间采样。它是逐场景优化的显式辐射表示,不等于网格、完整几何或 PBR 材质;高斯数量也直接带来显存和存储成本(2023-kerbl-3d-gaussian-splatting)。
  • 4DGS 并非单一模型。Wu 等用三维高斯配合 4D 神经体素和轻量 MLP 预测时间相关的位置、尺度、旋转等形变,重点是已捕获动态场景的重建与回放;Yang 等则直接用原生 4D 高斯表示时空各向异性体,并以 Spherindrical Harmonics 表示时变外观。两者都要谨慎区分于物理模拟、动作条件世界模型和长期时间外推(2024-wu-4d-gaussian-splatting、2024-yang-native-4d-gaussian-splatting)。
  • 从外观到可重光照:普通 3DGS 的视角相关颜色不能直接当作可编辑材质。可重光照高斯为每个 primitive 额外估计法线、BRDF 参数、方向相关入射光和可见性,并用 BVH 点云光线追踪/预计算可见性生成阴影;代价是更高的属性、预处理与存储/计算开销,而且多视图逆向分解仍有几何—材质—光照歧义,不应宣称获得完整全局光照(2023-gao-relightable-3d-gaussians)。

渲染实践

  • 理论上每个溅射可有自己的法线和半径,实际太占内存且需大量预处理,通常用固定半径公告板。半透明溅射的排序混合昂贵且易出伪影,多用不透明方形或镂空圆形。
  • 无法线时的着色:
    • 屏幕空间 AO:先以足够大的半径把所有点渲染到深度缓冲形成连续表面,第二遍按邻近像素中更靠近观察者的数量让点变暗;
    • 眼罩光照 (EDL):对比当前像素,找出更靠近观察者的邻居,累加深度差,取平均后取负、乘强度系数,再作为 exp⁡\exp 的输入。两者都需要先做一遍深度。
  • 有颜色或强度时光照已烘焙,可直接显示(光泽物体不会随视角变化);也可按物体类型、高程等非图形属性着色。边缘可通过检测深度差增强;数据稀疏或半径太小处会有缝隙。
  • 与其他数据结合:Cesium 可把点云与高分辨率地形、影像、矢量地图和摄影测量模型结合;也可从一个视点捕捉带颜色和深度的天空盒,使合成模型能与之正确遮挡并支持测量。

游戏中的点渲染:《Dreams》

Evans 的实验性系统:每个模型是簇的 BVH,每簇 256 个点,点由有向距离函数生成;每个 LOD 级别各有 BVH、簇和点,从高到低过渡时把高密度子簇的点随机减少到 25% 再换成低细节父簇。渲染器基于计算着色器,用原子操作把点溅射到帧缓冲避免冲突,实现了随机透明、景深(按弥散圆抖动溅射)、AO、不完美阴影贴图,并用时间抗锯齿平滑伪影。

局限

点表示任意空间位置,点间缝隙通常未知或不易获得,这是渲染的主要难点。与之相对,体素的样本间距总是相同。

  1. Real-Time Rendering(第 4 版) 第 13 章 Beyond Polygons
  2. 2023-kerbl-3d-gaussian-splatting
  3. 2024-wu-4d-gaussian-splatting
  4. 2024-yang-native-4d-gaussian-splatting
  5. 2023-gao-relightable-3d-gaussians

相关页面

图形学粒子系统Particle Systems粒子系统是一组按某种算法运动的小物体,用于火、烟、爆炸、水流、星系等,同时负责动画(生成、移动、变化、删除)和渲染。粒子通常渲染成公告板;难点在半透明排序、光照(逐顶点、逐像素低分辨率光照图块)以及接收/投射/自阴影(透射率溅射、傅里叶不透明度贴图、消光体积)(RTR4 13.8 节)。图形学体素Voxels体素是"体积元素",表示均匀三维网格中的一块空间,位置由网格索引隐含。体素是存储体积数据的传统方式,可存占用位、密度、颜色、法线、有向距离等。数据量按分辨率立方增长,常用稀疏体素八叉树 (SVO) 等结构压缩;可由 GPU 体素化生成,并通过光线投射、转多边形、移动立方体或等值面/水平集光线追踪来渲染(RTR4 13.10 节)。图形学环境光遮蔽Ambient Occlusion环境光遮蔽 (AO) 是余弦加权后半球上未被遮挡的比例,用来在光照缺乏方向变化时仍给出形状线索(缝隙变暗)。它由 Landis 在 ILM 为《珍珠港》开发,可离线烘焙,也可在物体空间或屏幕空间动态计算(SSAO、HBAO、GTAO 等)。AO 适合漫反射和平滑环境光,不适合点光源或小面光源的可见性(RTR4 11.3 节)。图形学公告板Billboarding公告板是根据视线方向调整朝向的带纹理矩形。配合 alpha 纹理和动画,它能表现草、烟、火、雾、爆炸、能量护盾、尾迹、云等没有光滑实体表面的现象。各类公告板的区别只在于固定哪个向量(法线或上方向);软粒子、球形公告板解决与实体相交和穿过近平面的问题,轴向公告板用于树木、激光等柱对称物体(RTR4 13.6–13.6.3 节)。图形学天空盒与固定视点技术Skyboxes & Fixed-View Techniques用图像代替三角形时,渲染代价与像素数而不是顶点数成正比。Lengyel 的"渲染谱系"从纯图像方法一直排到三角形和光线追踪。本页汇总谱系中偏图像一端的技术:限制视点移动的固定视点加速、渐进细化与重光照、天空盒、光场渲染以及精灵与分层(RTR4 13.1–13.5 节)。图形学抗锯齿Antialiasing渲染本质上是采样,采样频率不足就会混叠(锯齿、闪烁的"萤火虫"、车轮倒转)。屏幕空间抗锯齿在每个像素取多个样本并加权求和:超采样最直接但最贵,MSAA 每像素只着色一次,时间抗锯齿 (TAA) 把样本分散到多帧,形态学方法 (FXAA/SMAA) 作为后处理重建边缘。没有一种方法在所有方面最好。图形学可微渲染与神经渲染Differentiable & Neural Rendering逆向渲染 (inverse rendering) 要从图像反推场景参数 \mathbf x(形状、材质、光照……),通常写成优化问题 \mathbf x^=\arg\min{\mathbf x}g(f(\mathbf x)),其中 f 是渲染器,g 是损失函数。参数维度可达数百万,只能用梯度下降,因此需要可微渲染 (differentiable rendering):不构造巨大的雅可比矩阵,直接计算"图像空间梯度 × 雅可比"这一向量-矩阵乘积。难点是可见性造成的不连续、反向模式的内存开销和导数积分的采样。机器学习与渲染的结合可分三类:用学习得到的数据结构替换传统数据结构、用神经网络改进传统渲图形学基于物理的着色Physically Based Shading基于物理的着色从光与物质交互的物理出发,用 BRDF 和反射方程计算表面沿视线方向射出的辐射亮度:镜面项来自微表面理论与菲涅耳反射,漫反射项来自局部次表面散射,布料、波动光学与分层材质再作扩展。本页是 RTR4 第 9 章的总览,并收录该章第 9.13 节的材质混合与材质过滤(镜面抗锯齿)。图形学双向反射分布函数BRDFBRDF f(\mathbf{l},\mathbf{v}) 量化局部反射:只依赖入射方向 \mathbf{l} 和出射(观察)方向 \mathbf{v},涵盖表面反射与局部次表面散射。它通过反射方程把入射辐射亮度转换为出射辐射亮度,物理上需满足 Helmholtz 互易性与能量守恒,用方向反照率检验。方向光和精确光源可从小面光源的极限推导,使积分变为对光源的求和。本页对应 RTR4 9.3–9.4 节。

被这些页面引用3 篇

输入关键词开始搜索

滚轮或双指缩放 · 拖动平移 · 双击放大 / 还原