【渲染引擎】Blender的2021年最佳渲染引擎(上)
Blender最终摆脱了“古怪的孩子”的装束,并穿上了更为严肃和受人尊敬的“ 3D强者”。
它已在业界获得广泛认可,许多工作室和艺术家正在将其纳入他们的产品线。
您会问,动画工序末端的闪亮内容是什么?
好吧,它是渲染!当然,Blender的生态系统并不缺少功能强大的渲染解决方案。Blender本身包括三个现成的多功能渲染器,还有更多来自第三方的渲染器(Renderbus瑞云渲染农场支持Blender)。
在本文中,Renderbus云渲染农场将介绍所有这些渲染器。
Blender的2021年最佳渲染器(渲染引擎)
Cycles
首先,是Cycles渲染器。Cycles是Blender中功能最丰富,经过生产验证的渲染器。
这是一个路径跟踪引擎,这意味着它特别擅长于再现场景周围反弹的光的复杂性并与其中的各种元素进行交互。
它已经在许多电视和电影制作。
Cycles拥有丰富的渲染功能,包括强大的PBR着色节点,精确的地下散射,矢量位移和自适应细分,体积散射和吸收,焦散,密码遮罩支持等等。
Cycles得到了严格的维护和更新,最近的发展集中在严格的优化上。
这使得Cycles在其已经令人印象深刻的功能集之上成为了一个相对较快的路径跟踪器,尤其是在添加了OptiX技术的渲染之后,使其可以利用RTX内核来大大提高渲染速度。它还具有多个视口和渲染降噪器,包括强大的OIDN(CPU)和OptiX(GPU)降噪器。
它还具有对Nvidia和AMD GPU的多GPU渲染支持,以及带有图块窃取功能的GPU + CPU“混合”渲染支持。
话虽如此,Cycles确实有其局限性。
目前,在caustics等领域,LuxCoreRender在速度和准确性方面均胜过它。它还缺少轻链接,这是许多直接竞争对手中都非常需要的功能。
通过将其移植到其他3D软件的插件(例如Insydium的Cycles4D),Cycles已经证明了其成功,该插件将Blender的渲染引擎引入了Maxon的Cinema 4D。
Eevee
Eevee最初是作为Blender的“实时”视口设计的,目的是成为帮助其老兄Cycles的着色工作流程的预览工具,现已成为自己的野兽。
Eevee是Blender的实时栅格化渲染引擎,它替代了Blender 2.80中的Blender Internal渲染器。
自发布以来,Eevee一直风靡一时,尽管它是栅格化引擎,但下一个演示却展示了其强大功能。
尽管它永远都无法击败路径跟踪引擎,尤其是在“全局照明”、“折射”和“焦散”等领域,但Eevee仍拥有强大的功能集,以其极高的快速渲染速度而著称:
体积渲染、次表面散射、头发支持,用于NPR着色的强大的Shader-to-RGB节点,以及最近添加的Motion Blur和Cryptomatte支持。
Eevee当前的开发周期专注于填补其功能集中的空白,以使其完全可以用作生产渲染选项,并且Blender Animation Studio广泛地在Coffee Run短片上广泛使用它。
Eevee的最大力量是速度。
这是以牺牲其最大缺点为代价的,这正是其光栅化设计的本质:
反射、折射、接触阴影等都是“屏幕空间”效果,这意味着没有真正的路径跟踪功能可以计算出超出渲染屏幕的光弹。
这可能会使实现逼真的渲染更具挑战性,尤其是与其更精确但路径跟踪弟兄比较慢的渲染。
Workbench
该Workbench引擎是“标准”的发动机提供动力Blender的视口。
它的主要职责是在执行纹理/着色/光照/渲染之前的所有任务时保持平稳的性能。
但是,这并非全是灰色阴影,因为Workbench具有一些强大的功能,旨在在视觉上帮助用户完成多种任务,例如cavity 渲染、matcaps、轮廓和X射线选项。
一些冒险的用户甚至试图驯服Workbench引擎,使其迅速吐出“完成的”渲染,但这并不是出于胆小或容易实现的目的。
TrollTew设计的Stoner与Workbench引擎一起渲染
Blender的OctaneRender
OctaneRender首次发布时是GPU渲染领域的先驱之一,自那以后就成为功能强大而又快速渲染的家喻户晓的名字。
这是一个无偏见的、频谱正确的渲染引擎,它在最大程度上充分利用了RTX硬件,可以在视口中以极快的速度渲染准确的图像。
它具有分层材料(与手动混合着色层相反),具有完全Nuke集成的光谱随机行走次表面散射、体积渲染或深像素渲染等功能。
针对较大场景优化了核心外几何图形,以及两个新的“ Vectron”和“ Spectron”模块,可渲染非常大的程序几何图形和体积。
幸运的是,对于Blender用户,Octane提供了其Blender插件的特殊免费层,但需要注意的是,上述免费版本仅支持一个GPU。
该插件采用特殊的Blender内部版本的形式,可直接下载,并内置了OctaneRender引擎,这对于日常构建Blender高级用户而言可能会带来不便。
另一个警告是,Octane带有自己的着色器节点/编辑器,因此Cycles材质不会自动移植到OctaneRender。
但是,都是基于PBR的渲染引擎,着色器构造背后的逻辑足够接近,足以使着色器(至少基于图像纹理的着色器)的移植足够简单。
未完待续...
敬请期待下期:《Blender的2021年最佳渲染引擎(下)》
本文《Blender的2021年最佳渲染引擎(上)》内容由Renderbus云渲染农场整理发布,如需转载,请注明出处及链接:https://www.renderbus.com/share/blender-2021-1
相关阅读推荐:
【渲染引擎】Blender的2021年最佳渲染引擎(上)的更多相关文章
- CSharpGL(30)用条件渲染(Conditional Rendering)来提升OpenGL的渲染效率
CSharpGL(30)用条件渲染(Conditional Rendering)来提升OpenGL的渲染效率 当场景中有比较复杂的模型时,条件渲染能够加速对复杂模型的渲染. 条件渲染(Conditio ...
- Ogre 渲染目标解析与多文本合并渲染
实现目标 因为需求,想找一个在Ogre中好用的文本显示,经过查找和一些比对.有三种方案 一利用Overlay的2D显示来达到效果. http://www.ogre3d.org/tikiwiki/tik ...
- Light Pre-Pass 渲染器----为多光源设计一个渲染器
http://blog.csdn.net/xoyojank/article/details/4460953 作者: Wolfgang Engel, 原文: http://www.wolfgang-en ...
- Android渲染器Shader:环状放射渐变渲染器RadialGradient(三)
Android渲染器Shader:环状放射渐变渲染器RadialGradient(三) Android RadialGradient渲染器提供一种环状.发散.放射形状的渐变渲染器. 写一个例子: ...
- Android渲染器Shader:梯度渐变扫描渲染器SweepGradient(二)
Android渲染器Shader:梯度渐变扫描渲染器SweepGradient(二) 附录文章1介绍了线性渐变渲染器. Android的SweepGradient梯度渐变扫描,重点是在构造Swe ...
- UI系统的核心在于渲染机制:效率与生命--原生渲染为何比webview渲染快?
作者:谷宝剑链接:https://www.zhihu.com/question/264592475/answer/283852178来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请 ...
- 从0开发3D引擎(八):准备“搭建引擎雏形”
大家好,现在开始本系列的第三部分,按照以下几个步骤来搭建引擎雏形: 1.分析引擎的需求 2.实现最小的3D程序 3.从中提炼引擎原型 4.一步一步地对引擎进行改进,使其具备良好的架构 5.实现与架构相 ...
- Fixflow引擎解析(一)(介绍) - Fixflow开源流程引擎介绍
Fixflow引擎解析(四)(模型) - 通过EMF扩展BPMN2.0元素 Fixflow引擎解析(三)(模型) - 创建EMF模型来读写XML文件 Fixflow引擎解析(二)(模型) - BPMN ...
- mongodb底层存储和索引原理——本质是文档数据库,无表设计,同时wiredTiger存储引擎支持文档级别的锁,MMAPv1引擎基于mmap,二级索引(二级是文档的存储位置信息『文件id + 文件内offset 』)
MongoDB是面向文档的数据库管理系统DBMS(显然mongodb不是oracle那样的RDBMS,而仅仅是DBMS). 想想一下MySQL中没有任何关系型数据库的表,而由JSON类型的对象组成数据 ...
随机推荐
- 补:冲刺Day2
每天举行站立式会议照片: 昨天已完成的工作: 各个成员在 Alpha 阶段认领的任务. 今天各个成员的任务安排. 冲刺Day1博客. 今天计划完成的工作: 成员 任务 高嘉淳 完成登陆.注册 覃泽泰 ...
- 总括订单Blanket order
总括订单Blanket order是客户向其供应方发出的采购订单,但其中包含一段时间内的多个交货日期,通常使用谈判时的预定价格.大多数情况下,它用于对消耗性商品有经常性需求的情况.总括订单通常用于客户 ...
- Java集合源码分析(九)——HashSet
简介 HashSet就是一个集合,里面不能有重复的元素,元素也是无序的. HashSet其实就是调用了HashMap实现的,所以,它也不是线程安全的. HashSet通过iterator()返回的迭代 ...
- 通过Spring profile方式实现多环境部署
1 多环境部署 在实际软件开发和部署过程中,我们的软件往往需要在不同的运行环境中运行.例如,各个环境数据库地址不同,需要单独配置.spring高级装备中提供profile,来支持多环境部署. 1.1 ...
- Android全面解析之Activity生命周期
前言 很高兴遇见你~ 欢迎阅读我的文章. 关于Activity生命周期的文章,网络上真的很多,有很多的博客也都讲得相当不错,可见Activity的重要性是非常高的.事实上,我猜测每个android开发 ...
- 设置非root账号不用sudo直接执行docker命令
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- Cloudera Manager API使用
Cloudera Manager提供了很多API供用户进行访问,因此可以利用其提供的API进行大数据集群中各种服务的状态检测.监控以及服务的启停操作. 版本信息 Cloudera Manager 6. ...
- RocketMQ集群搭建(3m-3s-async)
RocketMQ集群搭建(3m-3s-async) 各角色介绍 角色 作用 Producer 消息发送者,将消息发送到 Broker.无状态,其与NameServer集群中的一个节点建立长连接,定期从 ...
- selenium IDE使用-1
selenium 硒 Mercury汞,外国人喜欢取这化学的名字 一.selenium概述 1.selenium是开源免费的,针对web应用程序功能自动化测试的工作. 2.做功能自动化的原因:回归测试 ...
- 基于Python PIL实现简单图片格式转化器
基于Python PIL实现简单图片格式转化器 目录 基于Python PIL实现简单图片格式转化器 1.简介 2.前期资料准备 2.1.1如何实现图片格式转换? 2.1.2如何保存需要大小的图片? ...