【翻译】Cycles生而为何?对Cycles之父的采访

您所在的位置:网站首页 Blender是什么渲染器 【翻译】Cycles生而为何?对Cycles之父的采访

【翻译】Cycles生而为何?对Cycles之父的采访

2024-06-10 14:35| 来源: 网络整理| 查看: 265

文章原标题:

Interview: Brecht van Lommel on Cycles

该文章发表于2012年3月21日,cycles渲染器最初于2011年blender年会(bconf2011)出现在公众视野。UP搬运并基本翻译本采访旨在让更多blender用户及潜在用户了解到Cycles渲染器的开发初衷。

UP不是图形学相关专业,加上翻译水平有限,文中出现的谬误,还请各位在评论区指正。英文好的小伙伴推荐阅读原文~

文章原地址:https://www.blenderdiplom.com/en/interviews/400-interview-brecht-van-lommel-on-cycles.html

————————————————————————

BlenderDiplom interviews Brecht van Lommel, the main developer behind Cycles, Blender's new render engine with realtime-preview. Find out why he started Cycles, what is planned for the future and why Cycles supports CPU, OpenCL and CUDA.

BlenderDiplom(采访称呼缩写BD)对Brecht Van Lommel(采访称呼缩写BvL),Blender的新的实时预览渲染器Cycles背后的主要开发者进行了采访。以了解他为何开发Cycles,未来有什么计划以及为什么Cycles支持CPU,OpenCL和CUDA。

 

 

 BD: You're Brecht Van Lommel, the main coder of Cycles, the new Render Engine for Blender 2.61. How came it that you started working on a completely new render engine for Blender?

BD:你是Brecht Van Lommel,Blender2.61的新渲染器Cycles的主要开发者。你是怎么想到要开始为Blender写一个全新的渲染器的?

BvL: I've been working for quite a while on the existing Blender render engine, we used it in many projects like the Open Movies. It has a lot of limitations, it was started in the 80ies and more and more features were added on top of it. The core of it isn't very modular and is sort of built for direct lighting and rasterization. Adding more stuff on to it became more and more difficult. I've tried to get the core working well and upgrade it but it wasn't working very well. At a certain point I just had a lot of free time and I just started coding in my free time "My ideal Render Engine". I tried to put in some things I learned from working with the artists on the Open Movie Projects. After half a year I showed it to Ton Rosendaal and he was interested in it. Now I have started working for the Blender Foundation again, half time solely on the Cycles render engine as a new renderer for Blender.

BvL:我已经为现有的Blender渲染器工作了相当长一段时间了,我们在很多项目,比如开源电影中使用了它。它有相当多的局限,它诞生于80年代,在那之后越来越多的特性被加在了它上面。它的核心不是很模块化,以及它差不多是为直接光照和光栅化而生的。在它之上添加更多东西变得越来越困难。我尝试过让核心不错地工作以及升级它,但结果并不是那么有效。在某个时间点,我有许多的空余时间,因而我就在闲暇时开始给“我理想中的渲染器”编程。我尝试着放进一些我从开源电影项目中一起工作的艺术家那学到的东西。半年后我把它展示给Ton Rosendaal(Blender基金会创始人、主席兼Blender之父)看,他表示对它十分感兴趣。现在我又为Blender基金会工作了,一半时间都花在Blender的新渲染器Cycles上。

 

 

 

BD: Just half time?

BD:只有一半的时间?

BvL: Well, I got a lot of other assignments like fixing bugs, release management and getting other coders get their work fit for integration into Blender. So I can spend only half my time on Cycles. But it's pretty good to be an employee of the Blender Foundation or the Blender Institute. It's a super job helping all the volunteers.

BvL:嗯,我还有许多别的例如bug修复,发布管理以及将其他开发者的工作合适地集成到Blender中的任务。所以我在Cycles上只能花我一半的时间。但是作为Blender基金会或Blender机构的雇员感觉很棒。帮助所有的志愿者是件超棒的工作。

 

BD: What's the target audience for Cycles?

BD:Cycles的目标用户是谁?

BvL: The target audience is more or less the same as Blender itself - individual artists and small studios. It's not meant to be a render engine for Hollywood. It's meant to be something that is easy to use, that produces renders quickly without too many technical parameters to tweak. I tried to keep it as simple as possible. The other thing I tried to do is make it more interactive. In Cycles you got a realtime interactive preview which updates while you're working. That's really important. In the Open Movies we had some rather complicated renders and whenever you hit "Render", it took several minutes until you actually saw pixels. So tweaking parameters took a lot of time.That's why I made Cycles an interactive raytracer. It keeps updating while you are changing parameters so you can see results as soon as possible.

BvL:目标用户和Blender本身多少有些相似——独立艺术家以及小型工作室。它不是一个为了好莱坞而生的渲染器。它应当是易于使用,能够在不调教太多技术上的参数的情况下快速地进行渲染。我会尽可能试着让它保持精简。另外一件我试着去做的事是让它变得更有交互性。在Cycles中你可以得到一个在工作中实时更新的交互预览。这十分重要。在开源电影中我们有一些相当复杂的渲染,无论何时当你按下“渲染”键,直到你看到实际的像素前它会花掉几分钟时间。所以调教参数会消耗大量的时间。这就是为什么我把Cycles做成一个交互式光线追踪器。它在你改变参数的时候时刻更新着,因此你可以尽快地看到结果。

 

BD: You did not take the pure physically correct approach but allow a lot of cheating?

BD:你没有使用纯物理正确的方法,而是允许了许多的“作弊(cheating)”吗?

 

BvL: We try to make it possible to cheat in various ways which are usually not possible in various physically based render engines. Basically if you want to do animation rendering and want it to render quicker you need to be able to disable various things like full Global Illumination or Caustics or reduce bounces for certain objects. There are various more tricks that allow to render things not physically correct but suitable for animation.

BvL:我们尝试用各种方式使在各种基于物理的渲染引擎中通常是不可能的作弊成为可能。基本上,如果你想做动画渲染,并希望它更快地渲染,你需要能够禁用各种东西,如完全全局照明或焦散或减少对某些对象的反弹。还有许多允许以非物理正确但是适合动画渲染的小手段。

(不知道怎么翻译cheating这个词比较合适,这里的“作弊”指的应当是用受限的物理算法,非物理正确的近似算法乃至禁用某些视觉效果得到在接近基于物理渲染的效果的同时拥有较快的渲染速度。)

 

 

 

BD: That's what Cycles is probably gonna do in the next Open Movie. Are you looking forward to the work?

BD:那是在下一个开源电影中Cycles将要做的。你期待这个工作吗?

BvL: That's in the next 4 months, so that's a bit scary. We'll see how it goes. We still got Blender Internal as fallback if we need it. But Cycles will be tested for various VFX tasks like render layers and render passes that will be composited with real footage and environment lighting from real footage. That will be the focus for the next few months, make it usable for VFX works.

BvL:那是在下个四个月里要完成的,所以那有点吓人。我们会看到它怎么发展的。如果我们需要,我们仍旧将Blender Internal(注:Blender的默认渲染器,自Blender2.80开始被废弃)作为回滚的选择。但是Cycles将在多种VFX任务例如渲染层以及与真实的片段进行合成的渲染通道和来自真实片段的环境照明进行测试。那将会是接下来几个月中的焦点,让它能在VFX工作中使用。

 

 

 

BD: Your main influence for the shader system was the Open Shading Language but you are not directly using it?

BD:你对着色器系统的主要影响是开放着色语言(OSL),但是你没有直接使用它?

BvL: At the moment we got two backends, one supporting OSL and the main one that is working on CPU and GPU. It is planned that one day OSL is supported in Blender.

BvL:现在我们有两种后端,一个支持OSL以及主要的那一个工作在CPU和GPU。计划中有一天Blender会支持OSL的。

 

 

 

BD: So some day one will be able to use custom OSL shaders in Blender?

BD:所以有一天我们将能够在Blender中使用自定义的OSL着色器?

BvL: The main issue is to get OSL working on the GPU. It's almost as much work as building Cycles itself. It's not easy to do so we need more people to help us.

BvL:最主要的问题是让OSL在GPU上工作。它的工作量几乎和搭建一个Cycles本身一样多。这并不容易,因此我们需要更多人来帮助我们。

 

 

 

 BD: For GPU rendering, Cycles is supporting both OpenCL and CUDA. Why this decision?

BD:对于GPU渲染,Cycles支持OpenCL和CUDA。为什么做这个决定?

BvL: Actually the languages are very similiar. OpenCL just has a few more restrictions than CUDA. Once you restrict yourself to the featureset of OpenCL, it's very easy to also compile for CUDA and CPU. The CPU thing is very important because many people don't have a suitable GPU or you got a scene that needs a lot of memory. OpenCL is also very important since it is supported by both AMD and nVidia. CUDA has the superior performance so it's useful to support both all three. So every user can choose the option that best suits his hardware.

BvL:语言实际上都十分相似。OpenCL相比CUDA只是多了一些限制。一旦你将自己限制于OpenCL的特征组(Featureset),为CUDA和CPU编译将变得十分容易。支持CPU是十分重要的,因为很多人没有合适的GPU,或者你有一个需要很多内存的场景。OpenCL也十分重要,因为AMD和nVdia都支持它。CUDA有着更强悍的性能,因此支持这三种计算平台是十分有用的。这样每一个用户就都可以选择最贴合他们的硬件的选项。

 

 

BD: Regarding interface you have chosen a dual-approach of both the traditional interface based on layers, but at the same time supporting nodes.

BD:关于界面,你选择了一个基于层的传统界面但同时又支持节点的双重方案。

 BvL: We have chosen nodes because they allow a lot of cool tricks and combinations. But nodes also tend to be harder to manage. In order to set up a scene with lots of materials there will also be presets, groups of nodes like plastic or metal. You will be able to stack them in a simple tree view so you can have results very fast while you still have the option to do all the complex and crazy things with nodes.

BvL:我们选择节点是因为它们允许许多相当酷的技巧以及排列组合。但是节点也往往更难管理。为了建立起一个有着许多材质的场景,其中将也会有很多预设,比如说塑料和金属的节点组。你将能够在一个简单的树状视图中将它们堆叠起来,因此你可以用节点在快速得到结果的同时又有做所有的复杂而又疯狂的事情的能力。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3