当前位置: 首页 > 科技观察

什么是四种效果图?终于有人说清楚了!(Top)

时间:2023-03-18 18:02:05 科技观察

渲染是将3D模型转换成2D图像,最后呈现在屏幕上的过程。虽然这里只有一句话,但这句话包含了太多的数学、物理和计算机知识。它描述了我们使用计算机虚拟化现实世界的基本逻辑。渲染过程计算量大且耗时。不同的渲染类别使用不同的渲染引擎。比如我们一般实时渲染用Unity和Unreal,离线渲染用V-ray和Keyshot。但这些技术和引擎产品都是相通的,所以虚幻的实时渲染能力也可以部署在云端,成为云渲染的体现。虽然,由于使用场景的不同,引擎本身的渲染算法也有自己的特点和优势。但是,随着硬件计算能力的发展,它们的界限正在慢慢模糊。常见的渲染类型包括:实时渲染、离线渲染、云渲染和混合渲染。它们之间既有重叠也有交叉,也有技术上的差异。我们避免过多的技术描述,并尽量以通俗易懂的方式进行解释。实时渲染(Real-timeRendering)从字面意思上很容易理解,就是我们想实时看到渲染后的3D物体或场景的效果。实时的,你怎么用数字理解它?至少24FPS:只要达到或超过1秒连续播放24张图像的速度,人眼观看时不会有卡顿的感觉。一般的实时渲染场景都具有很强的交互属性,比如最常见的3D游戏《王者》《吃鸡》,或者一些交互式3D应用,比如智慧城市、智慧园区的可视化项目。在实时渲染场景中,这些应用会独立运行在我们的电脑和手机上,通过本地硬件能力完成实时渲染过程。所以玩大型游戏,硬件性能一定要好。数据来源于网络离线渲染。离线渲染(OfflineRendering)从字面上理解,好像是“断网”后渲染,但这种理解是错误的。离线渲染对应实时渲染。简单的说,我们不需要实时看到渲染效果。这种场景最常见的就是我们的家装效果图。做过装修的朋友应该都知道,如果让设计公司出效果图,一般都是收费的(当然也有一些是免费招揽客户的),而且他们其实是做线下效果图的。那为什么我们不能实时渲染一个效果图,而是使用离线渲染机制呢?这取决于最终渲染效果有多高。数据来自于网络的实时渲染。虽然渲染速度快,可以实时生成渲染内容,但是渲染效果和真实感相对不可能特别高。对于离线渲染的场景,渲染的要求基本上是很高的,甚至是完全真实的。比如刚才说的家装效果图,你可能不需要马上看效果图,但是如果你看到效果图发现效果不好,你可能就要换一家设计公司了。另一种最常见的是好莱坞影视大片、3D动画等影视场景。它们都需要达到非常逼真的渲染效果甚至是完全真实的场景再现,但对实时性要求不高。所以一般的好莱坞大片,尤其是特效非常好的,拍完之后的制作周期非常长。比如大家熟悉的《阿凡达》,当时用了40000个CPU,104TB内存,10G网络带宽,下线渲染了一个多月。信息来源于互联网。说到这里大家应该会有一个疑问,4万个CPU怎么用来渲染呢?什么电脑能有这么多CPU?其实这就是离线渲染的概念容易被误解的地方:离线渲染在大多数情况下实际上是在线的。通常我们做家装效果图的话,可以用自己的普通电脑来渲染制作,但是我们的电脑硬件配置肯定不会特别好。因此,完成整个渲染计算过程到最终出图需要很长时间。当然,电脑硬件越好,时间越短。如果是专业的设计团队,虽然需要使用离线渲染来达到很高的渲染效果,但肯定也希望画图的时间越短越好。因此,一种新的离线渲染形式应运而生:渲染农场。说到渲染农场,相信很多人都不陌生。它在云端购买了很多渲染服务器。这些服务器可以构建数千个CPU或GPU的集群,服务于需要快速完成离线渲染的用户。资料来源于网络,这也是为什么《阿凡达》的渲染要用那么多CPU的原因。当然,现在GPU基本都是用来渲染的。一个渲染农场其实就是一个渲染服务器集群,当然是在线的。所以,只要一提到renderfarm,就是离线渲染场景下的一种渲染形式,但实际上恰好是在线的。CloudRendering云渲染(CloudRendering),这个字面意思就是在云端渲染。但是为什么上面讲渲染农场的时候没有特别强调是云渲染呢?实际上,按照渲染发生的节点,渲染农场的离线渲染属于云渲染的范畴。然而,我们通常对云渲染的理解是在云端完成实时渲染的场景。我们上面说的实时渲染,大多是在自己本地电脑或者手机上完成的,所以对终端硬件的要求比较高,否则“卡”肯定是在所难免的。云渲染的出现就是为了解决这个问题:让硬件性能较差的终端实时渲染出效果不错的3D内容。云渲染的基本原则是将所有的3D渲染工作交给云端。渲染完成后,编码后的视频实时发送给我们的客户端,客户端成为视频播放器,对视频流进行解码播放。在这个过程中,可以监听一些鼠标和键盘的操作来完成交互功能。如此海量的3D数据和美术资源,我们的手机客户端或者电脑客户端都不需要安装,而是全部在云端渲染。只要客户端具备看视频的性能,就可以体验渲染效果更好的3D应用。对于普罗大众来说,移动设备不需要配备特殊设备就可以体验效果不错的游戏,手机一般也不会发热。目前云渲染的场景主要体现在游戏场景,即云游戏。当然也包括一些对渲染质量要求比较高的3D可视化或者数字孪生项目。资料来源于网络说到这里大家应该对实时渲染、离线渲染和云渲染这三种不同的渲染形式有了基本的了解。其实说到渲染本身,就是一种数学算法在计算机上的计算过程。它们都各有优缺点和使用场景:(1)实时渲染追求渲染速度,需要比较强的交互体验。因此,即使在客户端硬件性能很高的情况下,也需要做大量的数学算法优化,在不特别降低渲染效果的情况下,减少渲染时间,从而达到良好的实时交互。(2)离线渲染追求渲染质量,不要求实时性和交互性。追求的是极致的渲染效果,达到真实的体验。因此,采用最极端、最好、最接近真实物理原理的渲染算法,进行逼真度高的渲染过程。通过渲染农场的云计算能力最大限度地减少渲染时间。(3)云渲染在满足实时性要求的同时,追求相对较高的渲染质量。因此,对云计算能力的部署和调度的要求会更高,让客户端配置较低的用户也能通过云渲染体验到不错的3D应用。