0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

揭秘:实时渲染、离线渲染、云渲染和混合渲染的区别

颖脉Imgtec 2023-12-26 08:27 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

渲染,就是将3D模型转换成2D图像,并最终呈现在屏幕上的过程。

常见的渲染类型有以下几种:

实时渲染

离线渲染

云渲染

混合渲染

它们中间有重叠交叉,也有技术区别。本文尝试用浅显易懂的方式来进行解释,希望大家遇到这些概念,或者一些3D渲染引擎产品的时候,可以按照这些渲染分类,去快速的进行定位和分析,更好的帮助我们理解和学习。

一、实时渲染

实时渲染(Real-time Rendering)从字面的意思非常容易理解,就是我们要实时的看到渲染之后的3D物体或者场景的效果。

实时,用数字怎么理解?至少24FPS:只有达到或者超过1秒钟播放24张连贯图像的速度,人眼观看时就不会形成卡顿的感觉。

一般的实时渲染场景都是带有强交互属性的,比如最常见的3D游戏《王者》《吃鸡》,或者是一些带有交互的3D应用,比如智慧城市、智慧园区的可视化项目。实时渲染的场景中,这些应用都会独立运行在我们的电脑手机上,通过本地的硬件能力完成实时渲染的过程。因此,玩大型游戏的话,硬件性能一定要好。

实时渲染追求渲染速度,要求比较强的交互体验。所以即便在客户端硬件性能较高的情况下,也要做大量的数学算法优化,在不是特别降低渲染效果的同时,减少渲染时间,达到很好的实时性交互。

二、离线渲染

离线渲染(Offline Rendering)这个从字面意思理解,好像就是“断网”之后在做渲染,但是这种理解是不对的。

离线渲染是跟实时渲染相对应的,简单说就是我们不需要实时地看到渲染效果的场景。

这种场景最常见的就是我们的家装效果图。做过装修的小伙伴应该都知道,如果让设计公司出效果图一般都是要收费的(有些为了吸引客户当然也会免费),他们其实就是在做离线渲染的工作。

那为什么我们不能实时地去渲染一张效果图,反而要用离线渲染的机制呢?这就要看最后的渲染效果到底要多高了。

实时渲染,虽然渲染速度快,可以实时生成渲染内容,但是渲染的效果和真实度相对来说是不可能特别高的。对于离线渲染的场景,基本都是对渲染要求非常高的,甚至是完全真实的。

比如刚才提到的家装效果图,你可能不需要立刻看到渲染图,但是如果看到的时候,发现效果不好,就可能要换其他设计公司了。

另外一个最常见的就是好莱坞影视大片、3D动画等影视场景。他们都需要达到一个非常逼真的渲染效果甚至是完全真实的场景复现,但是对实时性要求不高。

所以,一般的好莱坞大片,尤其是特效非常好的那种,拍摄完成后的制作周期都非常长。比如我们耳熟能详的《阿凡达》,当时动用了40000颗CPU,104TB内存,10G网络带宽,整整离线渲染了1个多月。

说到这大家应该会有一个疑问了,怎么可以用到40000颗CPU来进行渲染呢?什么电脑能有这么多CPU呢?其实这就是离线渲染在概念上,容易让人误解的地方:离线渲染大多数情况反而恰恰是在线的。

通常情况,如果我们在做家装效果图,是可以用自己的一台普通电脑去进行渲染制作的,但是自己的电脑硬件配置肯定不会特别好。

因此,完成整套渲染计算的过程到最终出图是需要很长时间的,当然电脑硬件越好,时间越短。

如果是专业的设计团队,虽然是需要运用离线渲染达到很高的渲染效果,同时肯定也是希望出图的时间越短越好。

因此就出现了一种新的离线渲染形态:渲染农场。说到渲染农场相信很多人都不陌生,它就是在云端买了很多渲染服务器,这些服务器可以搭建成千上万颗CPU或者GPU的集群,来专门服务那些需要快速完成离线渲染的用户。

这就是为什么《阿凡达》的渲染会用到那么多CPU的原因,当然现在基本都是采用GPU来进行渲染工作了。渲染农场其实就是搭建了渲染服务器集群,那当然就是在线的了。所以说,只要提到渲染农场,它是离线渲染场景中的一种渲染形式,但是实际上它恰恰是在线的。

离线渲染追求渲染质量,不要求实时性和交互性。追求的是极致的渲染效果,达到以假乱真的体验。因此就用最极致最优秀最贴近真实物理原理的渲染算法,来进行真实度极高的渲染过程。通过渲染农场的云端计算能力,尽量地减少渲染时间。

三、云渲染

云渲染(Cloud Rendering),这个从字面意义理解就是在云端完成渲染的意思。但是为什么上面讲到渲染农场的时候,并没有特意强调它就是云渲染呢?

其实如果按照渲染发生的节点来说,渲染农场这种离线渲染就是属于云渲染范畴的。

但是,我们通常对于云渲染的理解,一般都是在云端完成实时渲染的场景。

上面我们提到的实时渲染大部分时候都是在我们自己本地的电脑或者手机上完成的,因此对于终端硬件的要求是比较高的,不然“卡顿”肯定是无法避免的。

云渲染的出现就是为了解决这个问题:让硬件性能不太好的终端也可以实时的渲染效果不错的3D内容。

云渲染的基本原理是,把所有的3D渲染工作都交给云端。渲染完成后,编码成为视频实时地传送给我们的客户端,客户端就变成了一个视频播放器,对视频流进行解码和播放,这个过程中可以监听一些鼠标和键盘操作,来完成交互功能。

这样大量的三维数据和美术资源不用安装到我们的手机或者电脑的客户端,而是全部在云端完成渲染,客户端只要具备看视频的性能,就可以体验具有比较好渲染效果的3D应用。

对于大众来说,手机设备不用特别高配,就可以体验效果很好的游戏,而且手机一般也不会发烫了。目前云渲染的场景主要也是体现在游戏场景中,即云游戏。

当然还包括一些对渲染质量要求比较高的3D可视化或者数字孪生项目。

云渲染追求相对较高的渲染质量同时,也要达到实时性要求。所以云端算力的部署和调度的能力要求会更高,让客户端配置不高的用户通过云渲染也能体会到不错的3D应用。

四、混合渲染

混合渲染(Hybrid Rendering)从字面意思就是非单一方法的渲染机制。这也就使得这个词,没有一个完全标准且唯一准确的定义。首先大家需要明白,渲染的最终目的是呈现画面,不论是图片,视频,还是实时交互的场景。那为了这个最终的呈现结果,如果渲染过程中采用了很多种方案来混合实现,就可以说它是混合渲染。

下面从不同的角度,总结了一些混合渲染的形式。

基于管线的混合渲染

基于管线的混合渲染,指的是一条渲染管线中,会用到不同的计算承载方式,最终来完成渲染工作。

① 光栅化(Rasterization)

渲染管线中,这是最基本的计算承载方式。它对于一些光线不是很复杂的场景仍然是可以胜任的,但是如果光线一旦复杂,它就没有办法很好地胜任复杂的光线算法了,因此渲染效果也就不尽人意。

计算着色器Compute Shader)为了解决光栅化的计算效率低下问题,现代图形API都提供了计算着色器,即Compute Shader。本质是一种通用计算的能力(GPGPU),完全运用在Compute Pass中的,是“专一”的计算单元,有了这种通用计算能力,就不再是光栅化中的“模拟”计算了,而是专业级的计算能力。③ 光线追踪着色器(Ray Tracing Shaders

就是特意为光线追踪这种数学算法而设计的,它由很多特殊着色器模块的组合而成。

这三种计算承载方式之间并不是谁要代替谁,也没有一种完美的方法。而应该对于不同的场景,运用不同的方法。只要混合使用了不同渲染方法的渲染管线,都可以理解成是混合渲染的一种体现。

基于数据的混合渲染

基于数据的混合渲染,指的就是对一个3D场景中的不同3D资源(模型,场景等)进行分类,相当于对3D资产数据进行拆分,把不同类别的3D数据放到不同的渲染节点进行渲染,最后通过网络通信技术,把数据合并到一个需要显示输出的节点上,进行最终的呈现。

基于硬件的混合渲染

基于硬件的混合渲染,指的就是CPU和GPU可以同时参与渲染任务的一种混合渲染模式。

  • 基于框架的混合渲染

基于框架的混合渲染,指的是渲染过程可以从之前的框架转移到另外一个全新的框架上实现。


总结下就是,混合渲染没有一个固定的定义,只要把“渲染”混合使用,都可以叫混合渲染。

目前,我们已经介绍了离线渲染、实时渲染、云渲染、混合渲染。要强调的是,它们之间所用到的技术和场景,有很多都是相互交叠在一起的,并没有一个标准唯一的准则。其实渲染本身,就是一个数学算法在计算机上的运算过程,它们都有各自的优劣和使用场景,大家可以按照渲染分类,去快速的进行定位和分析,更好解决我们遇到的问题!

本文来源:Orillusion

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • gpu
    gpu
    +关注

    关注

    28

    文章

    5354

    浏览量

    136384
  • 模型
    +关注

    关注

    1

    文章

    3912

    浏览量

    52429
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    技术选型篇__数字孪生应用开发:端渲染与流渲染融合的工程适配与演进

    和交互规则,后续发布时可以选择“纯端模式”、“纯流模式”或“混合模式”。在混合模式下,系统会自动根据客户端的GPU负载和网络带宽,动态决定哪些模型走本地渲染,哪些走
    发表于 05-13 13:56

    行业洞察篇__数字孪生IOC的“双引擎”时代:当端渲染遇见流渲染

    能够根据当前任务的类型、终端设备的硬件性能、甚至实时的网络条件,动态地选择最合适的渲染方式。你可以想象这样一个场景:一个安保人员在园区巡逻时,他手里的平板主要依靠端渲染来处理近距离、高频的交互操作,比如点击
    发表于 05-14 09:50

    技术选型__数字孪生项目交付中端渲染与流渲染的协同策略

    架构的极限,正在被需求撕开 行业普遍共识是,随着实时数据接入、多端协同、私有化部署这些需求成为数字孪生项目的硬性门槛,单一渲染技术路线的局限性已经越来越明显。我自己的体会是,端渲染在处理中小规模场景
    发表于 05-22 10:20

    技术选型之道|端渲染与流渲染融合:数字孪生应用落地的理性路径

    一个尴尬的现实:单一渲染路线就像只有一把锤子,看什么都像钉子。 我曾经观摩过一个项目招标,某方案声称用纯端渲染实现了全城级别的实时渲染,结果实际演示时,场景加载耗时惊人,一旦开启车辆轨
    发表于 05-22 10:23

    渲染与流渲染的分化与融合:数字孪生开发套件的工程选型逻辑

    渲染,因为终端根本承载不了那么庞大的数据量。但实际项目中很少有纯粹的单一场景,更多是混合场景——比如在一个智慧水务系统中,大屏上既要显示全城水系总览(适合流渲染),又要支持点击某个泵站查看
    发表于 05-22 10:39

    行业洞察篇__财务数字孪生的渲染选择:端渲染与流渲染的协同演进逻辑

    实时数据接口,就耗费了两个月,而且最终数据延迟仍然超过了一分钟,这对于需要实时推演的财务场景来说几乎不可接受。 另一个挑战是成本冗余。虽然混合架构理论上能降低终端硬件成本,但如果流渲染
    发表于 05-22 11:02

    场景适配论__数字孪生IOC与开发套件的协同:端渲染与流渲染的融合路径

    所有的锁,而是根据场景的交互频次、数据复杂度、终端类型等因素,灵活组合两种渲染模式。这个方向主流技术栈正在转向,我称之为端协同的混合架构。具体来说,就是让高频交互、低延迟要求的操作(比如数据筛选、空间
    发表于 05-28 15:39

    渲染与流渲染的融合之道:数字孪生应用开发套件的工程选型思路

    超大城市级地理信息底图的全景漫游,以及园区内几百个智能路灯的实时控制操作界面。坦白讲,当时我们尝试了两种方案:用纯Web端渲染,结果城市场景加载到一半,浏览器直接崩溃;切换到服务端流渲染,网络抖动几次
    发表于 05-28 16:09

    渲染与流渲染的融合之道:数字孪生应用开发工具的演进逻辑

    意识到,单纯依赖某一条路线,都会在跨终端适配和实时数据融合上撞南墙。想象一下:一个城市的应急管理系统,领导在指挥中心大屏上需要看全局态势,流渲染能承载上亿面片的精细模型;一线巡查人员用手机接收任务,他
    发表于 05-28 16:12

    渲染与流渲染的分工与融合:数字孪生应用开发套件的技术演进逻辑

    的需求不再是围着大屏看数据流动动画,而是要求实现实时的仿真预测和跨部门的协同调度。这时候,纯端渲染的局限性就暴露得特别明显——你没法让一个需要在外场巡视的工程师,拿着手机就流畅地加载出方圆几公里的港区
    发表于 06-02 12:55

    行业洞察篇__数字孪生IOC的“双渲染引擎”架构:端渲染与流渲染如何协同支撑智能运营

    的调度层,根据终端设备的算力、网络带宽和业务场景的实时性要求,动态分配渲染任务。从工程实践来看,端渲染更适合处理高频交互和轻量级场景,比如园区级日常巡检、设备状态查询;而流渲染则负责承
    发表于 06-02 13:02

    HarmonyOS/OpenHarmony应用开发-ArkTS语言渲染控制if/else条件渲染

    ArkTS提供了渲染控制的能力。条件渲染可根据应用的不同状态,使用if、else和else if渲染对应状态下的UI内容。说明:从API version 9开始,该接口支持在ArkTS卡片中使用。一
    发表于 08-21 14:29

    华为渲染实践

    提到渲染,大家可能会直接联想到云游戏,实际上二者并不等同。华为致力于将渲染技术应用于各个行业,目前主要包括实时
    的头像 发表于 08-24 16:46 2552次阅读
    华为<b class='flag-5'>云</b><b class='flag-5'>渲染</b>实践

    探索渲染技术与渲染的魅力!

    在数字艺术和计算机图形领域中,渲染技术占据着至关重要的地位。随着科技的进步,渲染作为一种新兴的渲染方式,正逐渐受到业界的关注和应用。本文将对渲染
    的头像 发表于 04-12 08:30 1148次阅读
    探索<b class='flag-5'>渲染</b>技术与<b class='flag-5'>云</b><b class='flag-5'>渲染</b>的魅力!

    CPU渲染、GPU渲染、XPU渲染详细对比:哪个渲染最快,哪个效果最好?

    动画渲染动画3D渲染技术需要应对复杂的计算任务和精细的图像处理,作为渲染技术人员,选择合适的渲染模式,会直接影响制作效率和成品质量。在主流的渲染
    的头像 发表于 04-15 09:28 2153次阅读
    CPU<b class='flag-5'>渲染</b>、GPU<b class='flag-5'>渲染</b>、XPU<b class='flag-5'>渲染</b>详细对比:哪个<b class='flag-5'>渲染</b>最快,哪个效果最好?