3d3d2015vray渲染器下载 哪个最好用.哪个能更好的表现出光线

什么是实时光线追踪技术?它可能出现在当前的次世代主机上吗?
我的图书馆
什么是实时光线追踪技术?它可能出现在当前的次世代主机上吗?
【lgthetyro的回答(31票)】:
=============这部分是相关讨论,提问回答在最后=============
君的回答前面还比较靠谱,而后面说 光线追踪现在还在很初级的阶段,连电影业都没广泛应用,皮克斯直到汽车总动员才开始大规模使用光线追踪,而且还是部分应用。
以及或许10年后再看,光线追踪只是一个历史的笑话也说不定。
就显得有些主观臆测了。
说 "光线追踪现在还在很初级的阶段" 我无法认同。
什么是光线追踪算法
基本光线追踪算法:
(上图来自wikipedia)(上图来自wikipedia) 1. 对于每个像素,由摄像机向场景中发射一条光线。
2. 对于每条光线,一直追踪到它碰到某物体表面。
3. 对于每个与表面相交的点,向光源发出一条影子探测光线,来查看是否每个光源都可见,并依此来对该像素点着色。
4. 如果相交的表面材质是漫反射的就停止。如果表面材质是反光/折射的,则根据物理中反射或折射原理计算得出反射/折射方向并发射一条新的光线。
5. 重复1到4,直到达到最大追踪深度或者光线碰到光源或者漫反射表面。
光线追踪算法的优势:
1. 具有物理准确性,可以达到相片级渲染,尤其擅长强反射(金属等)和折射材质(玻璃、液体等),焦散( caustics )现象、复反射( interreflection ) 等可以模拟得很逼真,还有影子。
2. 算法简单易实现
光线追踪算法的劣势:
计算代价很高,就是慢
光线追踪历史:
将光线追踪算法应用于图片渲染最初是由Arthur Appel于1968年提出,那时还叫ray casting。1979年Turner Whitted带来了新的研究突破(Recursive Ray Tracing Algorithm)。1984年, Carpenter等人发表了一篇分布式光线追踪的论文(Distributed Ray Tracing),影响甚广。发展到今天,大多数的相片级渲染系统都是基于光线追踪算法的。基本的光线追踪算法并不难,相信大部分的同学都写过的,难的是如何优化提高效率。
皮克斯的RenderMan和光线追踪
说到皮克斯直到《汽车总动员》才开始大规模使用光线追踪。皮克斯的《汽车总动员》于2006年6月在美国上映,今年已经是2014年了,已经快8年过去了,沧海桑田呐同学们。
皮克斯一直使用的是自家开发的渲染器RenderMan,基于REYES(Renders Everything You Ever Saw&--有点雷= =) 。REYES是另一种渲染算法,它对于处理复杂场景非常高效。1984年的时候皮克斯有考虑过光线追踪,但最终还是坚持使用REYES。那篇关于《汽车总动员》的论文(Ray Tracing for the Movie ‘Cars’)我有浏览过,里面提到五年前(也就是大约2000年左右)他们就启动了添加ray tracing功能到RenderMan的这个项目,同期《汽车总动员》正在制作中,文中也提到了《汽车总动员》使用光线追踪的动机:realistic reflections, sharp shadows, and ambient occlusion。REYES在处理反射强烈的汽车表面材质方面有些捉襟见肘,只能用environment map,仍然达不到光滑闪耀的质感。而这正是光线追踪擅长的。
使用光线追踪的主流渲染器
RenderMan就不说了,它本是基于REYES的,现在也有ray tracing的选项。众多工作室都在用。
(以下是纯基于光线追踪的渲染器)
Mental ray,NVIDIA出品,已经集成到3D建模软件Autodesk 家的Maya和3ds Max中。
Arnold近些年渐揽风骚,Sony Pictures Imageworks,Digital Domain, ILM, Luma Pictures等著名特效公司均有使用该渲染器。
VRay,比Arnold大众一点,近几年也在疯长,它目前有CPU版本和GPU版本(V-Ray 和 V-Ray RT GPU)。
光线追踪算法在目前的影视特效领域占有重要的地位。我不认为光线追踪会成为"一个笑话"。2013年的SIGGRAPH有关于光线追踪的讲座(Ray Tracing is the Future and Ever Will Be),可以参考。
硬要说的话,“光线追踪算法在电子游戏领域的应用还在初级阶段”还比较靠谱。
光线追踪目前多用于影视特效中做静帧渲染。若想要应用到游戏中就需要做到实时渲染,就是提问中说的实时光线追踪(Real-time ray tracing)。
======================回答问题的分割线======================
最后回答问题:什么是实时光线追踪技术?它可能出现在当前的次世代主机上吗?
什么是实时光线追踪技术?
光线追踪(Ray tracing)算法前面说过了,那什么样的是实时的呢?6 fps左右就可以产生交互感,15 fps 可称得上实时,30fps不太卡,60 fps感觉平滑流畅,72 fps再往上肉眼就已经分辨不出差别。
它可能出现在当前的次世代主机上吗?
全面应用在当前看起来是不太行,在将来应该会有。
你要CPU跑实时的光线追踪似乎是有点为难它了,在GPU上实现实时光线追踪相对容易一些,原因
的回答里基本说了。GPU的优势就是核多,大量并行计算。而恰巧光线追踪就是个特别平行的体力活,每条光线都相互独立,所以可以并行地计算它们。能够加速的地方有碰撞检测,可以使用kd-tree或oct-tree之类。2009年SIGGRAPH 会议上, Nvidia 就发布了OptiX,Nvidia GPUs实时光线追踪的API 。
另外,NVIDIA目前已经有virtual GPU技术,类似于云计算,不需要本地的GPU。如果virtual GPU可以应用到主机上,实现实时的光线追踪应该没有问题。
最最最后, Phil Spencer原tweet说的是:“@7kayhan@albertpenello We’ve done experiments with Realtime Raytracing. A ton of potential with this tech, amazing visuals.”
他只是说做了相关实验,却被Gamespot完全改编成了另一种说法: 。提问中的那篇文章看上去像是根据Gamespot这篇报道来的。
[1] Matt Pharr and Greg Humphreys. Physically Based Rendering, Second edition
[2] Tomas Akenine-Moller, Eric Haines and Naty Hoffman. Real-time Rendering, Third edition
[3] Wikipedia
【知乎用户的回答(9票)】:
从物体发射的光最后到达摄像机,摄像机才能成像。由于光线是可逆的,我们可以i从摄像机发射射线来于场景中的物体相交,就可以知道这个射线最后成像后的颜色。如果有反射和折射,那么这根光线就继续从这个相交的点开始继续射下去。直到他对颜色的贡献小于某一个阈值或者计算时间超过了限定等。
光线追踪可以获得非常真实的渲染效果,尤其是在光影还有环境漫反射方面。
如果光线追踪能够达到每秒渲染30帧,30fps那么我们就可以说它是实时的。现在的高端显卡可以做到10几20帧。简单的场景30帧也可以的。
光线追踪的主要技术难点有两个,
一是怎样快速的找到与射线相交的物体,这个在cpu上有不错的算法,因为cpu有大cache, 和高度优化的逻辑指令,但是cpu核太少,一次算不了几根射线。用gpu一次可以算几百几千根射线,但是cache小,逻辑指令相对较慢,需要特别设计的算法。
第二个问题是怎样快速的收敛。因为光线是反射来反射去的。一般的方法光线跳几次,你就得算几遍,这个是很费时间的。一副720p就至少80多万条射线,现在的gpu也就几百个核,算一次也得跑几百次,这还是一次反射,然后再多几次反射后时间就花得差不多了。除非有特别好的算法,否则这个是现在实时化的主要瓶颈。
题主的那个视频是NVIDIA的raycast demo, 只是很简单的场景,所以以现在的gpu做到实时毫无压力。应用到游戏中的复杂场景就不一样了。
Xbox One也主要看计算量怎么在cpu和gpu直接分配,看微软有没有逆天的算法。否则离替代光栅化还有一定距离。
【知乎用户的回答(12票)】:
原理什么的楼上已经说了很多了。单独说计算量其实没什么可怕的。但是除了计算量之外,还有别的原因:
和基于滤波的光栅化相比(当然实际上也不完全是这样,具体见评论),完全靠采样的光线追踪的噪声是一个比较麻烦的问题。为了降低噪声,需要付出平方级别的采样成本。
此外,光栅化算法中,几何数量、屏幕分辨率都与计算量有着近乎线性稳定关系;相比之下场景复杂度对于光线追踪有着不可预期的影响;
最后,如果使用有偏估计来加速图像生成,因为是有偏的,所以细微的变化都会早成比较严重的色差。帧与帧之间的差异性会造成严重的帧间抖动。这样你看起来就屏幕就不停的闪烁。
电影上你看到的那些美轮美奂的画面,是付出了无数后期制作成本才有的。
所以综合考虑光线追踪的这些特点,恰好和游戏需要的帧间连续性和场景复杂度可预计性是相悖的,要纠正他们需要付出很高的计算的代价,所以我不认为RT会成为游戏成像的主流。不过作为一些视觉效果的计算,特别是全局光照之类需要物体间交互的算法,RT或者其变种(例如Cone Tracing)已经登上了3D的舞台。
【知乎用户的回答(10票)】:
(图片来自(图片来自)
光线追踪的原理其实很简单。它使用的数学基础知识大致只相当于我们的高中水准,比如各种和点线面有关的夹角、交点和距离的计算等等。一个最简单的光线追踪算法的原理可能是这样的:从眼睛发出很多光线,每根光线穿过屏幕上的一个像素点,和场景中的物体(可以发光或不发光)相交,反射或折射很多次,最后根据每次反射和折射时,物体表面的反射率、折射率以及物体的颜色得出一根光线所对应的像素的颜色。现在,光线追踪算法在学术界已经发展了很多年了(粗略估计,至少有20多年了),所以,现代的光线追踪算法实际上显然已经不是像我说的这样了,不过原理不会差太大(比方说,光线的出发点不再是眼睛,而是光源)。
(图片来自(图片来自)
光线追踪算法最擅长的事情是绘制高反射率和折射率的东西,比如抛光了的金属,镜子和玻璃球什么的。上面左边这张图是用一般的光栅化算法绘制的,右图是光线追踪,可以看到光线追踪算法在茶壶(又见Utah Teapot哈)这样的不规则的曲面上绘制出了很好的反射效果。同时,也可以看出,光线追踪算法也是一种通用的绘制算法。
当然了,光栅化算法也是可以做出类似的反射效果的,不过用光线追踪算法来做,是一种更为自然和通用的选择。
光线追踪算法很难实时,主要的原因是,光线和物体的求交算法需要很多计算量。现在流行用多边形来表达复杂的三维物体,所以,一种最简单暴力的光线求交算法就是遍历所有的多边形,接着看看光线和哪一个多边形相交。然后,再遍历一次所有的多边形,计算反射或折射后的光线与哪个新的多边形相交。所以,场景越复杂,多边形数量越多,求交算法所需要的计算量就越大。总结一下,就是每条光线,每反射或折射一次,就需要遍历一次多边形找交点,大家感受一下计算量的大小。而更常见的3D绘制算法,一般只需要遍历一次多边形就可以完成整个场景的绘制了。
当然,只要随便用一点优化就可以大幅提升上面我说的这个最简单的算法,比如考虑相邻光线和帧的相似性,用八叉树来对3D场景进行划分以加快求交算法等等。但总体上来看,计算量还是很大。
即便如此,实时的光线追踪也不是那么难。业界有光线追踪硬件这个事实,不代表实时光线追踪只能用定制的硬件来实现。
Nvidia大力推广的CUDA,让使用现有的3D显卡架构进行通用并行计算变得更为便利。于是,很自然的,大家就开始研究怎么用CUDA和现有的N卡,来实现实时的光线追踪了。接下来我不讲原理(我邀请了
,其实他更适合来答这个问题),贴一点我读过的一篇论文里给出的实验结果。
这幅图来自于 SIGGRAPH 论文这幅图来自于 SIGGRAPH 论文,它基于CUDA设计了一种新的编程语言BSGP。为了展示这种语言的优越性,作者们用这种语言实现了光线追踪算法,只用了475行代码,用CUDA的话,其实也只用815行。三个场景中的三角面片数量依次是174K,72K和111K,分辨率都是,光线反射次数最大为4次,FPS依次为9.73,3.36和4.00,采用的硬件是一台PC,搭载了 Intel Xeon 3.7GHz CPU 和 GeForce 8800 GTX graphics card。而且,论文发表于08年,有编译器和代码可供下载()。
现在是2013年,5年过去了,我不知道现在的实时光线追踪算法已经发展成什么样了,但似乎8800的N卡已经停产了,当然了,是因为性能太差。
工业界的实际应用情况
我不赞同孟德尔的答案中所说的
光线追踪现在还在很初级的阶段,连电影业都没广泛应用
定义什么是广泛应用很难,但是,我可以举出几个使用光线追踪的例子,我想至少可以说明不算还处于“很初级的阶段”。
Nvidia 有 Mental Ray ():
mental ray? is a feature rich, high performance 3D rendering software that creates images of outstanding quality and unsurpassed realism based on advanced ray tracing techniques. 我不想翻译这段话,我只想大家看到它是用光线追踪做的。然后,下面是使用了 Mental Ray 的电影截图:
(以上两张截图自于Nvidia的页面)
据说 Spiderman 3, The Hulk and The Matrix, Reloaded & Revolutions也有使用 Mental Ray。
即使电影中还没有广泛使用光线追踪,但是从 MentalRay 也可以看出作为显卡大厂的 Nvidia 是看好光线追踪的。
实时光线追踪在工业界的最好的例子应该是 Nvidia 的 Optix()吧。(我很奇怪,为什么大家觉得一定要用定制硬件才能实现实时光线追踪,用现有的N卡上的GPU实现的实时光线追踪就不算光线追踪吗?)
Optix 依旧使用 CUDA 架构,许多支持 CUDA 的N卡都可以使用,但性能太低的N卡可能无法实现实时。在实际应用方面,Adobe 和 Pixar 都已经开始使用Optix [1][2][3]。
虽然现在还没有出现使用实时光线追踪算法的游戏,但学术界早已有了很多进展,在工业界,电影特效行业也早已开始使用光线追踪算法,而且,显卡大厂 Nvidia 也已经发布了GPU加速的基于光线追踪算法的特效制作软件 Mental Ray,和面向实时光线追踪算法加速引擎 Optix,这些都不需要定制的光线追踪硬件,现在市面上的大多数N卡也都已经支持CUDA架构。
即使现在还很难在普通的PC游戏中使用实时的光线追踪算法,但在有需求的前提下,硬件性能不会成为未来持续阻碍光线追踪算法在游戏中的使用的主要原因,随着专业级3D显卡价格的下降,原本可能要在工作站上才能实现的实时性能,在普通PC上也会实现,玩家们只需耐心等待显卡降价。
在次世代主机上的应用
最后再回到次时代主机的问题上来。似乎 XBOX ONE 和 PS4 用的都是 AMD 的显卡,所以它们将无法使用 CUDA 。不过我们还有得到众多硬件厂商支持的 OpenCL,可以实现跨平台的通用并行计算。再说,以微软在图形学这个领域的牛逼程度,实现一个世界顶级的实时光线追踪算法在软件层面没有啥难度,关键看 AMD 的显卡性能是否足够强劲了。所以我觉得,即使 XBOX ONE 上面看不到实时光线追踪,也可以等以后 XBOX 搭载更牛的显卡。至于索尼方面,只要微软做出来了,不怕它不跟进。另外,有消息称SteamOS 会支持 OptiX [4],所以我们也可能会先在Steam的主机上看到实时光线追踪算法的效果。
实时性不会在未来成为阻碍光线追踪算法的理由,只要大家觉得它渲出来的效果好就行。
[1] . NVIDIA. 2013. Retrieved .
[2] . NVIDIA. 2013. Retrieved .
wiki page.
【孟德尔的回答(16票)】:
如果你只是想看看样子,PS4的新游戏已经用上了,如果是大规模应用,请等下代主机。
我是技术盲,只说一下大致的印象。
其实你不需要知道光线追踪是什么,因为实际上你也不知道现在采用的光栅化3D技术的原理,对吧?光线追踪的原理很好理解,屏幕上的每个像素都发出一束光去射击3D物体,遇到物体表面就把相关的信息叠加到光上。反倒是现在的光栅化技术很抽象,你可以认为是先把3D物体拍成一张照片,然后对这张照片上色,由于针对的不是3D物体本身,所以会发生很多奇怪的现象,这也是传统3D技术画面不真实的原因所在。
两者之间的关系类似于飞机和汽车,部分硬件能通用(发动机),但是因为运行原理完全不同,因此对硬件的需求重点也不同(比如,汽车发动机要求高扭矩,而飞机没有需求)。如果光线追踪发展到很成熟的阶段,就连部分硬件都不通用了(类似螺旋桨飞机进化到喷气式飞机)。
现在的3D显卡虽然已经普及了统一渲染构架,比原先的通用性高多了,但是仍然是一种特化硬件,如果在现在的显卡上走光线追踪,对CPU的依赖会非常大,这与显卡包揽一切的趋势是向背的。
目前实验阶段的光线追踪硬件都是FPGA,可以看成是一个功能没有被限制在光栅化,可以自由定制的原始显卡,要将其改为自由度很低的定制显卡才能提高光线追踪的效率。自然,真正的光线追踪显卡对过去所有的3D游戏都是不兼容的,这才是问题的关键。
以现在的技术,生产出一种高效的光线追踪显卡并不难,而且价格不会很高(现在光线追踪的低效都是因为没有使用专用硬件造成的),所以无法推广的唯一因素就是光线追踪技术根本没有需求。
3D显卡推广花了差不多10年吧,那时候没有的人就是没的用,而现在3D显卡的功能都已经与操作系统结合起来了,不可能统一换新。过去CPU的64位与32位之争,最后以兼容32位收场,因此黄老板他们也是走这条路。DX现在增加的双精度浮点运算等功能,都是为了在老式显卡上运行部分光线追踪程序而准备的。以后的显卡可能会彻底改变结构(就像显卡进化到硬件T&L还有统一渲染构架),同时支持光栅化和光线追踪。也可能在保留现有构架的前提下,增加一个专门负责光线追踪的特效模块,比如集成Caustic的RPU显卡。
微软所说的也是这种,可能只在水体反射之类的特效上使用,但是画面整体水平不会有飞跃,要知道现在大部分游戏连场景光照都是预渲染的,老技术还没普及,怎么可能跨代呢。
游戏厂商要部分引入光线追踪的难度不是很大,因为现在工作量最大的三维建模和贴图都可以沿用到下来。但是要彻底换用光线追踪,是否还会使用多边形技术就很难说了,或许真的要过渡到曲面?
光线追踪现在还在很初级的阶段,连电影业都没广泛应用,皮克斯直到汽车总动员才开始大规模使用光线追踪,而且还是部分应用。
多说一句,虽然光线追踪技术是热点,但是并不意味着它就一定是未来。游戏的生命就是实时性,所有低效的技术,无论效果多么好,哪怕不可替代,都注定会死亡。历史上曾经被看好的3D图形技术,10个中有9个都死了。90年代和多边形技术同时兴起的还有一种椭圆球体技术(ellipsoid),曾经被寄予厚望,但现在搞计算机图形学的人都没几个听说过它。
或许10年后再看,光线追踪只是一个历史的笑话也说不定。
这就是椭圆球体技术(ellipsoid),1996年的作品,借机缅怀一下。
【张静vinjn的回答(3票)】:
实时光线追踪技术是未来的趋势,不论是 NVIDIA 还是 微软 都在往这个方向靠。
不能说太多,说太多要暴露了。
另外有个哥们提到“光线追踪现在还在很初级的阶段,连电影业都没广泛应用”。看到这里我的世界观都奔溃了。
看了这个链接我觉得需要感谢这个哥们,让我涨了知识!
利益相关:NVIDIA 员工,微软粉丝。工作中需要搞 OpenGL / DirectX,也研究过简单的基于纯 CPU 以及 基于纯 GPU 的光线渲染器。
【知乎用户的回答(3票)】:
光线追踪就是根据一个点,推算使这点发光的多束光路,从而渲染像素点。光线追逐是一个非常消耗资源的项目,如1L所说,皮克斯在Cars中少量引进了该技术,但是据说该部分消耗的渲染时间是恐怖级别的(因为皮克斯的渲染农场是针对传统渲染程序设计的)。即便是NVIDIA,在4系卡上也只是借用开普勒核心首次讲“入门”级别的光线追踪引进到家用卡上、但是根据专业机构的评测,4系卡只能做到10fps以内的少量低分辨率的渲染,明显不够用,即便是升级了的6系,恐怕也不能达到基本的30fps吧。
家用主机的话,硬件性能统统在PC之下,也就是说…下代你都见不到的!
【知乎用户的回答(2票)】:
我假设你问的其实是ray tracing是什么,因为我想如果知道ray tracing,那么实时ray tracing就不是问题了。
ray tracing是一种渲染(成像)技术,基本原理是从相机向空间做射线,根据射线与空间物体的交错点的几何属性(位置)、物理属性(材质),和空间中光源的性质,最后计算出该点的颜色值。是目前很多数字电影后面的渲染引擎(如pixar的Renderman)用的技术(现在的这些引擎,会杂很多的技术在里面,如photo mapping)。
这种技术能做出相片级的渲染,但是每一帧画面耗时非常的多。为了得到一个像素的值,可能会在场景里产生大量的射线,譬如,每个像素可能衍生出了1000、甚至是10000根射线。在ray tracing中,大量的碰撞就是ray和物体的碰撞检测。
但是,这并不是ray tracing不能实时的理由。国外有文章提到过(早期看的,找不到来源了),软件光栅化的方法写出的3D渲染器和用ray tracing方法渲染器同时来计算出一幅画面的话,可能差距不是很大。现在的3D引擎是实时的,是因为GPU(光栅化技术)渲染的能力能实时吞吐。对于ray tracing来说,没有相对应的专门的硬件(肯定有本身算法导致硬件不是那么好弄),才使它不能“实时”。
当然,现在有用GPU来进行ray tracing的,如英伟达(Nvidia的):
和Power VR(手机里GPU的一家供应商)的
但是,它们这些GPU还应该只是利用GPU来帮助ray tracing。
所以,第二个问题答案也就是,有了相应的xPU就可以实时。未来我想有是肯定的。
推特我没有看,但是GPU界的几个老大现在就到这样,微软估计肯定不会比他们还牛逼,但是世事难料,也许半路杀出个黑马来,但我不信是微软了, :)
正好看到一篇中文文章,翻译的fxguide的,这篇文章涵盖大量的信息,供后来者参考。
【孟亮的回答(0票)】:
PS4上的杀戮地带4号称用了,你可以去看看,不过我看那个只是一定程度应用这个技术,和影视级别的差距还是很大,说到底,噱头而已
【侯烁的回答(0票)】:
实时光线追踪还是光线追踪的一种拓展,实时光线追踪还是初级阶段啦,基本上unreal4的cone tracing或者是屏幕空间的反射追踪应该属于这种,当然准确度比较差,而且unreal4就是因为svo cone tracing太耗了就删减掉了。接下来可能的研究方向还是在利用GPGPU跳过光栅化流水线的逻辑吧,但是gpu的这种架构想做并行光线追逐还挺难的,毕竟不能利用局部一致性了从而加大了代码预测和执行效率优化的可能性。这要是成熟,没个五年不行 原文地址:
馆藏&64842
TA的推荐TA的最新馆藏用3d渲染器理性分析绘画中的色彩规律(一)
从小就喜欢画画,一直从小学断断续续画到大学.水平一般,素描半吊子,色彩不会画;
毕业以后从事的是3d美术的工作,建模型,偶尔渲染几张效果图.后来想做独立游戏,于是坚持了一年时间学了unity和一些编程的知识,也差不多可以独立做些小游戏了.
&但是现在突然发现自己不会画彩图,完全不知道在画完线稿后怎么上色.
于是决定要在狠狠的补一补色彩方面的知识.
我比较喜欢比较理性的东西,我觉得那些有名的油画,每一笔色彩,都有其深层次的理由----色相,饱和度,明度到底如何变化,才构成一幅优秀的绘画作品;
我对3dsmax的vray渲染器比较熟悉.vray渲染器广泛得运用到室内装潢和建筑动画,它渲染的效果是基于物理的计算,十分真实,因此决定用渲染器来探寻现实生活中色彩的变化规律,理解这些规律,就可以更好的运用到绘画中
-------------开始-----------------
首先我在3dsmax里搭建了一个简单的场景:
一个球,一块平面,一盏平行光,一个摄像机,用来固定观察视角.
& 刚开始我尽可能让场景简单,
小球的颜色是纯红色,灯光是纯白,平面是灰色无杂色,渲染器打开间接光照,模拟现实中光线的反弹传播;
通过这个设置我想探究一个纯色的物体,在无其他颜色物体的影响下,自身的色彩纯度,饱和度,明度是怎么变化的;
下面是渲染图,每个黄点我都吸取了颜色,用HSB显示颜色数值(H是色相,S是饱和度,B是明度)
通过这张图可以看到纯色的球也是满足传统素描的明暗关系:
&灯光直接照射处明度最高,明暗交界处,明度最低,暗部因为有地面的反光,明度有所提高;
而饱和度和色相没有变化; &&
(不懂素描的人很多会认为灯光照射不到的地方是死黑的,其实这是不对的.我们可以把光线看做一个一个粒子样的小球,它们会在物体间来回穿梭反弹,反弹的地方会变亮;
&因此我们看到处于球阴影处的地面受到小球反弹的红色光线的影响,地面有微弱的变红;
&这也从侧面反映出渲染器还是符合现实物理的表现)
下一个实验我调整一下球的颜色,因为自然中很少有纯色的物体,或多或少会掺加些绿色和蓝色的色系,我不再让球是纯红色,而是加入不等量的绿和蓝色;
&(颜色的三个基本颜色是红绿蓝,所有的颜色都是由这三种颜色不同比例混合而成)
球除了高光区域(这里我定义高光区是受光最多,反射灯光最强的区域)色相向蓝色偏移,其他区域色相不变;
分析高光色相向蓝色偏移的原因:
这里不得不补充一下高中物理中光学的知识,即:
&光和物体固有色的关系----
&物体反弹什么色系的光,我们就看到物体呈现什么样的颜色:
白色光学包含了所有色系的颜色;物体若只反弹而不吸收白光中的红色,而吸收剩余其他所有的颜色,那么我们看到的是红色;物体反弹不吸收蓝色,那它就是蓝色;如果所有的光线都反弹,那就是白色,所有光线都吸收,那就是黑色了;
根据上面的知识推测,应该是球物体反弹蓝色光线的能力大于反弹绿色光线的能力(和该物体RGB中每个色系的值比例的大小成正比
R:255:G:20:B:40),物体反弹灯光中的蓝色光波的数量大于绿色的光波的数量,因此我们看到球的色相由红色向蓝色色相偏移;
那非高光区域为什么色相未发生变化?
这个疑问我现在还没有头绪,不过可以根据这个现象可以得出一个暂时的总结:非高光区域,物体的色相是不变的,而高光区域的色相变化由比例最多色系偏向第二比例大小的色系&利用这个经验,我们运用到绘画中:强光的区域颜色不只是简单的变亮,而且也带有色相的变化;
饱和度变化:
饱和度变化从高光区域的51,到其他区域的到恒定的69;
为什么高光区域饱和度这么低;
从百度百科对饱和度的定义理解:
饱和度是指色彩的鲜艳程度,也称色彩的纯度。饱和度取决于该色中含色成分和消色成分(灰色)的比例。含色成分越大,饱和度越大;混杂上白色,灰色,是不饱和的颜色;
高光区吸收白光.混入的白色,因此饱和度下降,
得到结论是:假设物体受无色光照射,在非高光区域,物体的饱和度是一致的,而高光区域的饱和度降低;
我们可以注意到地面处于球阴影的区域有一部分呈现球的颜色,这片区域对球阴影部位的影响非常微弱,但我们也不能忽视这片区域颜色的作用,我们若把球的位置再靠近地面,暗部的饱和度是否会有更加明显的变化?
我们看到饱和度从69上升到72,尽管只是微弱的差别,但也告诉我们间接光照的颜色也会对物体的色相有所影响--物体吸收地面微弱红色光,色相增加;
所以以后画物体在角落处的颜色饱和度可以根据间接光照的强度适当的提升饱和度;
我们再把上面的总结重新归纳一次:假设物体不受其他有色光(包括间接反色的影响),在非高光区域,饱和度是一致的,而高光区域的饱和度偏向灯光颜色的饱和度,而间接光照反弹影响的区域饱和度会上升;
明度的变化:
明度的变化依旧严格按照者素描的明暗关系;
由此我们得知,即使我们再画色彩的时候,去掉色彩的外衣,明暗关系还是要遵循素描的那一套;
这里有一个检查色彩明暗素描关系是否正确的关系技巧:
就是加一个自然饱和度,然后把饱和度设置成最小-100; & &
& 就变黑白素描了;
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 3d2010vr渲染器下载 的文章

 

随机推荐