专栏名称: 老顾谈几何
讲解、传播现代几何理论、计算方法和实际应用。理论包括代数拓扑,微分几何,黎曼面理论,偏微分方程,代数几何,复几何等等;计算方法包括计算拓扑,计算共形几何,离散曲率流等等;应用包括计算机图形学,视觉,网络,几何建模,可视化和医学图像等等。
目录
相关文章推荐
超级数学建模  ·  这瓶面霜,让你明白抗老意义在哪!28天淡化法 ... ·  2 天前  
超级数学建模  ·  限时领 | ... ·  昨天  
51好读  ›  专栏  ›  老顾谈几何

虚幻引擎5技术解析(3):虚拟几何纹理

老顾谈几何  · 公众号  · 数学  · 2020-05-24 09:10

正文

2020年5月Epic Game发布的 虚幻引擎5 演示视频惊艳了世界 虚幻引擎5具备两 大全新核心技术: Nanite 虚拟微多边形几何技术和 Lumen 动态全局光照技术。 Nanite虚拟几何技术的出现意味着具有极其复杂 几何 的影视级艺术作品可以直接 导入虚幻引擎,几何数据 可以被实时流送和缩放,因此艺术家们无需再考虑多边形数量预算、多边形内存预算 也不用再将细节烘焙到法线贴图或手动编辑细节层次( LOD )。艺术家们的创造力不再被技术所限制,这极大地推动计算机图形学领域的发展。


最近, Eurogamer对Epic Game进行了采访【1】,其采访报告证实了我们的推断:Nanite的 虚拟多边形几何技术 本质上是将传统的虚拟纹理技术与新颖的几何图像技术【2】相结合,得到虚拟几何纹理技术。 我们在前面简单介绍了 几何图像技术 虚拟纹理技术 ,这里我们再详细解析一下几何纹理技术。


几何纹理概念

在计算机图形学的传统中,几何曲面用三角网格来表示,如图1所示。

图1. 米开朗基罗的大卫王头像,传统曲面用非规则的三角剖分表示。

图2. 曲面的共形参数化。


如图2所示,我们可以将曲面参数化映射到平面。为了减少参数化带来的几何畸变,我们采用计算共形几何算法【5】。仔细观察图1和图2,我们看到虽然弯曲的三维几何曲面被铺到平面区域之上,但是几何的局部细节被完美保持,局部上眉眼口鼻、耳朵发卷的形状没有畸变。从几何上讲,这一映射诱导的相应切平面之间的映射(切映射)是相似变换,但是相似比点点不同。


图3. 几何图像(左帧)与法向贴图(右帧)。


如图3所示,我们在参数域内用整数格点规则采样,每个采样点用一个像素来表示,像素的红绿蓝颜色代表采样点的空间坐标(x,y,z), 然后用一幅图像来表示曲面,即所谓的 几何图像【 2 ,如左帧所示 。同样,我们也可以用每个像素来代表曲面上采样点处的法向量,颜色值代表法向量的三维坐标,如此得到了曲面的 法向贴图 ,如右帧所示。




图4. 几何图像的mipmap。


每幅几何图像表达了一个曲面,我们对几何图像下采样,得到曲面的低解析率表示,如此得到几何图像的mipmap,如图4所示。几何图像可以用于表示任意复杂的曲面,例如图5所示的 米开朗基罗的大卫王雕像


图5. 米开朗基罗的大卫王雕像,几何图像表示


传统的纹理贴图将二维纹理图像贴到三维曲面上, 如图6所示, 我们将棋盘格图像贴到斯坦福兔子曲面上,这里纹理图像表示了曲面的颜色。纹理图像也可以表示曲面的法向量,从而增加曲面的几何渲染的细节,如图7所示。为了表达鱼鳞的几何,我们需要太多的三角形。我们将高解析率的三角网格用最优传输映射参数化到平面圆盘【3】, 最优传输映射 的算法 我们以前有详尽介绍。然后我们生成法向贴图,将法向贴图和低解析率的三角网格配合,我们依然可以得到几何细节的渲染效果。


图6. 颜色纹理贴图,由共形映射得到。



图7. 鱼曲面的法向贴图,由最优传输映射得到 (苏科华作


有了几何图像,我们可以用几何图像来作为纹理,从而增加曲面表面的几何细节,这被称为是 几何纹理 。如图8所示,小女孩穿的毛衣具有周期性的几何扭结结构,是用非常复杂的三角网格来描述,这件毛衣就是几何纹理。


图8. 几何纹理(靳淼作)。


基于几何图像的表示,我们自然可以将一个几何曲面作为另外一个几何曲面的纹理,做出三维浮雕效果。例如,我们将大卫头像的几何图像作为犹他茶壶的几何纹理,如图9所示:


图9. 大卫头像作为犹他壶的几何纹理,产生浮雕效果【4】。


几何纹理既可以与底曲面相加得到阳刻浮雕,也可以与底曲面几何相减得到阴刻,如图10和11所示,

图10. 马头的颜色纹理,几何纹理。


图11. 阳刻几何纹理,阴刻几何纹理【4】。


同样,我们可以将龙或者玫瑰曲面制成几何图像,从而转换成几何纹理,做成三维刺青,如图12所示,


图12. 三维刺青Tatoo【4】。


图13.自然赖瓜的几何纹理提取。


自然的几何物体大多具有丰富的几何纹理。2006年,丘成桐先生、张松教授和老顾提出了基于结构光的几何纹理提取方法【4】。如图13所示,我们从农贸市场上买了一个赖瓜,用三维结构光方法获取三维几何曲面(左帧),再用数字几何方法将曲面光滑化(中帧),然后计算两张曲面的区别,从而提取赖瓜曲面的几何纹理(右帧)。在【4】中,我们提出用GPU来渲染基底曲面(中帧)和几何纹理(右帧),从而得到左帧的绘制效果。


虚拟几何纹理

图14. 每个雕像具有3300万个多边形。


GPU的显存很有限,无法存储尺寸巨大的几何纹理或者图像纹理。受到虚拟内存技术的启发,虚拟纹理技术将纹理图像切割成很多页面(tiles),动态将当前场景需要的纹理图像页面调入GPU显存,并且实时修改虚拟纹理地址和物理纹理地址之间映射的Lookup Table。程序开发者在虚拟地址空间上编写程序,底层虚拟纹理的软硬件系统对于程序员透明。因此,虚拟纹理系统可以支持无限巨大的纹理图像。同样,我们将传统纹理图像替换成几何纹理(几何图像),从而可以支持无限大的几何数据。


根据 Eurogamer对Epic Game的采访【1】 ,Epic Game的演示中每个武士雕像都有3300万个多边形, 如图1所示, 其几何细节是由数字艺术家用ZBrush工具设计出来,其逼真程度令人惊叹!每个武士雕像的曲面分成八片,包括头部、躯干、胳膊、下肢等部分;每片曲面被三张纹理图像覆盖,每张纹理图片是8k乘以8k,纹理图像包括一张基本颜色,一张金属色泽/粗糙程度,第三张是Nanite技术的关键:几何纹理,表示成几何图像(貌似传统的法向贴图,但本质上是几何图像,区别请参看图3)。基于虚拟几何纹理技术,Nanite技术可以支持史无前例的几何复杂度,从而达到异常逼真的绘制效果,这极大地解放了艺术家的创意和才华。同时,法向贴图不再必需,曲面几何压缩、细节层次LOD、烘焙等传统技术也将被时代所扬弃。

虚拟阴影图

图15. 自我遮挡的阴影表面,几何细节不是法向贴图,而是几何纹理。


如果贴近观察,我们可以看到几何细节会产生复杂的自我遮挡阴影,这意味着几何细节并非由法向贴图逼近,而是货真价实的几何纹理。为了渲染复杂的几何纹理,Epic Game应用了虚拟阴影图(shadow map)技术。所谓阴影图(shadow map)原理如下,我们将镜头移到点光源处,绘制整个场景,用z-buffer计算相互遮挡关系。这样得到的图像就是阴影图,这里每个像素存储z-buffer中的深度信息。然后,我们将镜头移到原来位置,重新绘制。对于屏幕上的任意一个像素加上深度信息,我们计算其在阴影图中对应的像素,然后比较两个深度信息。如果两个深度信息不一致,则当前像素处于阴影之中。Epic Game为每一个点光源(例如太阳、手电筒)绘制一张16k的阴影图,存储成阴影图纹理。由于阴影图过大,超过GPU的内存,他们再度使用虚拟化技术,即用虚拟纹理技术来处理阴影图。虚拟阴影图技术突破了阴影图尺寸的限制,使得阴影的边缘如同刀片般的锋利,这极大地增强了绘制效果。

小结

Nanite虚拟微多边形几何技术本质是将传统的虚拟纹理技术与几何图像技术相结合,用纹理图像来表达几何纹理,从而可以支持无限复杂的几何数据,极大地解放了艺术家的创意和才华。


几何数据与图像数据的统一表达是这项技术的关键,将复杂几何曲面转换成粗糙的基底曲面与细致的几何纹理,需要用到曲面参数化技术,而曲面参数化技术的根基是共形几何【5】与最优传输、蒙日-安培方程理论【3】。我们相信依随虚幻引擎5的发布,游戏工业会对大规模曲面参数化的算法产生强烈需求,这将会推动年轻学子们对于学习几何理论知识的热情。【6】给出了线上共形参数化的演示,【7】给出了线上最优传输映射的演示。


丘成桐先生和我合著的《计算共形几何-理论篇》详尽地解释了这些几何算法背后的数学原理,并给出了离散几何理论和算法,这对于广大游戏、影视领域的工程师,计算机专业的学生非常具有实用价值。如果有兴趣预定,请 识别下图中的二维码。

图16. 《计算共形几何-理论篇》,预售二维码。



【1】https://www.eurogamer.net/articles/digitalfoundry-2020-unreal-engine-5-playstation-5-tech-demo-analysis

【2】 X. Gu, S. Gortler and H. Hoppe, Geometry Images, SIGGRAPH 2002, http://hhoppe.com/proj/gim/

【3】 Gu, Luo, Sun, Yau, "Variational Principles for Minkowski Type Problems, Discrete Optimal Transport, and Discrete Monge-Ampere Equations", AJM Vol. 20, 2016.

【4】 X. Gu, S. Zhang, R. Martin, P. Huang and Shing-Tung Yau , "Holoimages", Solid and Physical Modeling 2006.

【5】顾险峰,丘成桐,《计算共形几何-理论篇》,高等教育出版社,International Press,2020,5.

【6】https://www3.cs.stonybrook.edu/~gu/demo/index.html

【7】http://conformalgeometry.org/summer_school_2020/





《计算共形几何-理论篇》的二维码。











请到「今天看啥」查看全文