学习使用Blender时,引发的——关于“光”和“影”的思考。

OOo,TeX,KO,ABI,GIMP,Picasa,ProE,QCAD,Inkscape,Kicad,Eagle
回复
头像
yq-ysy
论坛版主
帖子: 4443
注册时间: 2008-07-19 12:44
来自: 广西(桂)南宁(邕)

学习使用Blender时,引发的——关于“光”和“影”的思考。

#1

帖子 yq-ysy » 2013-02-17 2:17

有网友问起使用Blender“环境光”的问题,引发了关于“光”和“影”的思考。

简单而言,就是二句话:
光——有“亮”的颜色(Light光亮色),也有“暗”的颜色(Shadow阴影色)。
物体——有“亮”的颜色(Diffuse固有色),也有“暗”的颜色(Ambient暗影色)。

可以做个试验:打开的Blender,默认已经有了一个Cube立方体
Shift A 添加 => Mesh 网格物体 => plane 平面 => S 3 放大平面3倍。

(1)鼠标右键选中Lamp灯,X 删除,现在没有任何光源,
F12渲染得到一大块黑色,分不清哪个是平面,哪个是立方体。

(2)World世界 => 勾选Environment Lighting环境光,F12渲染得到灰白图像带点阴影。
注意,环境光菜单里默认选中的是白色,也就是说“最明亮的光”就是用白色来表示。
那么如果想使用“带颜色的环境光”应该怎么办呢?

(3)接着在World世界栏里,把Ambient Color暗影色默认的黑色改为FF0000红色,
F12渲染得到粉红的图像带点阴影。
——这样看来好像“Ambient Color”真的可以翻译为“环境光”了呢,真是这样吗?

(4)现在把Environment Lighting环境光的勾选取消掉,现在又一次没有任何光源了,
F12渲染得到一大块红色,分不清哪个是平面,哪个是立方体。
——不对啊,如果Ambient Color是个“光”,怎么可能分不开物体呢?
这已经能证明Ambient Color暗影色是来自于物体本身,而不是外在的光源。
(如果觉得证明的“力度”还不够,可以继续下面的实验。)

当然,这个“一大块红色”在没有任何光源的情况下,我们通常是看不到的,
因为人类的视觉还不够敏感,在没有光源时,就把所有的东西Diffuse都看成黑色,
而更加微弱的Ambient Color暗影色则更是看不到了,所以大脑就忽略不计了。
而实际上Shadow影子也是有颜色的,而且它和物体本身的Ambient或Diffuse颜色都不同。

为什么在Blender的Lamp灯光设置中,居然会有“为阴影添加颜色”这样的设置?
——这难道不是“违反了自然规律”吗?

有兴趣的朋友,可以网上搜索“诡异的光影实验”这篇文章自己做实验亲眼看一看。
http://bbs.tianya.cn/post-29-525860-1.shtml
——只有自己亲手做了这个实验,亲眼看到之后,你就可以明白,
Blender的程序员,他们也是遵照着科学的严谨态度来设计3D动画软件的光影效果的。

在电脑上,也可以用实验证明这一点:
(5)首先,选中立方体,在右边的Marterial材质里,
把Diffuse(漫射色、固有色)的颜色改为00FF00绿色。
Shift A 添加 => Lamp灯光 => Point点光源,选中这个灯
G Z 3、G X 3、G Y 3 移动到合适的位置。
在右边特性编辑器的灯光Object Data物体数据标签页里,
Lamp灯光栏目下,默认是白色,保持不变,
Shadow阴影栏目下,选中Ray Shadow投射阴影,默认是黑色,改为蓝色0000FF。
F12渲染,注意看:
Ambient_Color-1.png
Ambient_Color-1.png (12.02 KiB) 查看 1525 次
Plane平面向光的一侧,是粉红色(Ambient红色+Diffuse白色+Lamp白色灯光);
Cube立方体向光的一侧,是黄色(Ambient红色+Diffuse绿色+Lamp白色灯光);
立方体背光的一侧,是“大红色”(立方体本身的Ambient Color暗影色);
立方体的影子,是“紫红色”(红色+Shadow蓝色阴影)——注意!
注意!这里的红色是来源于平面本身的Ambient Color暗影色,不是立方体的。

如果把“Ambient Color”当成是“环境光颜色”,那么这大红色就解释不通了,
这背光处的大红色“环境光”怎么能把物体本身的绿色全盖掉了,而又不相互作用?
这是因为:
Diffuse(漫射色、固有色)是用来表现物体“亮”的那部分的颜色,它需要光源才能显现。
而Ambient暗影色是用来表现物体暗的那部分的颜色,有光源时就与Diffuse相互作用,
没有光源也不会影响它的存在,没有光源时Diffuse看不到了,它才反而显得更突出而已。
所以,Ambient Color不能理解为“环境光颜色”,而应该是属于物体它自己的“暗影色”。

上面说了这么多,简单而言,就是二句话:
光——有“亮”的颜色(Light光亮色),也有“暗”的颜色(Shadow阴影色)。
物体——有“亮”的颜色(Diffuse固有色),也有“暗”的颜色(Ambient暗影色)。

至于在你的设计中,是否想表现出来(是否符合人类视觉习惯),这由你自己决定。
Blender的程序员只是尽量把物理世界的真实情况都摆出来,让你这个上帝随时可以调用,
当然,他们设计程序时默认地把Ambient Color设为黑色,这也是照顾了人类的视觉习惯。

Blender程序员没有把Ambient Color放在物体的材质设置里,
我也觉得这方面他们有点考虑不周了,应该让各个物体可以单独设置不同的Ambient颜色。

有趣的是,在Blender官方wiki的World的Background部分里,
介绍有Horizon Color和Zenith Color,偏偏就没有写上旁边的Ambient Color;
而在Blender官方wiki的Lighting的Ambient Light 部分里,
直接把Environment Lighting全部一整段都放在这里了,连标题Environment Lighting都没改。
头像
IsoaSFlus
帖子: 366
注册时间: 2012-11-13 11:30
系统: ubuntu17.10,Arch
联系:

Re: 学习使用Blender时,引发的——关于“光”和“影”的思考。

#2

帖子 IsoaSFlus » 2013-02-17 13:58

太高端,太长......
头像
cjxgm
帖子: 1952
注册时间: 2010-04-23 20:40
系统: Arch Linux
来自: 浙江·杭州
联系:

Re: 学习使用Blender时,引发的——关于“光”和“影”的思考。

#3

帖子 cjxgm » 2013-02-17 16:39

没看懂,晕晕的…… :em20
Clanjor Prods. | Develop for Developers. (C++, Lua) | 作曲编曲 | 实时渲染引擎
头像
adagio
论坛版主
帖子: 22110
注册时间: 2008-02-17 23:47
来自: 美丽富饶的那啥星球

Re: 学习使用Blender时,引发的——关于“光”和“影”的思考。

#4

帖子 adagio » 2013-02-17 17:58

物体本来就没有颜色,光更没有,这玩意完全是你们人类的视网膜和那些充满私心、没有主见的反射物体一起编出来的骗人的,是彻头彻尾的假象 :em04
明天就换大三八!
——8核CPU、8G内存、8T硬盘……
8卡交火,80寸大屏放8个……
IPv8的光纤要8条……

---------------------------------------------------------------------------------
[图片版]新手当自强(续)FAQ
[新手进阶]挂载、fstab、调整linux分区
[图片版]E17桌面环境配置手把手
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 学习使用Blender时,引发的——关于“光”和“影”的思考。

#5

帖子 eexpress » 2013-02-17 18:18

写这么多,去邮件列表里面发吧。会英文不。 :em04

blender.cn是有的。去吧。支持你。
● 鸣学
回复