这周群里有鹿友问到了关于OC的一个问题:
一直觉得自己的OC的知识点太散了,所以这一周我都在重头系统学习OC,进度比较慢,还没有学完。
关于主环境和可见环境这两个知识点我平常自己很少用,但是在B站上看了很多教程好像都没有仔细的提到,有的甚至解释的不是很准确。
刚好鹿友问到,刚好自己在学习,就整理分享出来,算作对知识的巩固吧。
为了解释这两个知识点我这里搭建了一个很简单的场景,一个平面,三个球体,三个球体的材质分别是漫射、反射以及透明材质:
OC灯光里的环境光以及日光里的模式都有主环境和可见环境这两种类型:
主环境就是我们平常最常使用的环境,它能产生光照并且让场景产生漫射、反射、折射以及投影等效果。
以HDRI环境光为例,当我们把主环境模式切换为可见环境模式之后,会出现背景、反射以及折射三个选项:
这三个选项分别代表着在不产生光照的前提下,背景、反射以及折射是否可见:
日光也是如此,并且你仍然可以通过控制灯光的参数来调整物体上反射以及折射的信息:
道理很简单,但是可能你会问那这个有啥用呢?其实是和你自己想要的效果有关系。
这里分享几种常用的场景吧:
1、当你的场景中只有灯光照明但是又想要在对象上反射出环境的时候
这也是最直接能够想到用法的地方,可以将HDRI环境光设置为可见环境模式,勾选反射和折射,同时通过灯光来对场景进行照明:
2、当HDRI环境光与日光混合使用的时候
例如我这里既有日光又有HDRI环境光,并且日光里勾选了混合天空,让日光和环境光同时产生照明:
大家仔细观察,虽然环境变成了HDRI的环境了,但是球体里其实是反射了太阳的:
那如果我要把这个反射的太阳搞掉,但是同时又想要日光和HDRI环境光同时控制场景的照明怎么办呢?好办,把HDRI环境光复制一份:
再将复制出来的HDRI环境光改为可见环境,勾选反射和折射,这样反射的太阳就被覆盖掉了:
3、想要把HDRI贴图背景换成纯色的背景的时候
当然这种情况你可以通过后期来处理,这里就演示一下用法,例如我将HDRI环境光的模式切换为主环境:
再新建一个纹理环境光放在HDRI环境光的下面,注意这个层级的顺序哦:
然后将纹理环境光的模式切换为可见环境,只勾选背景,这样HDRI的环境背景就会替换为纹理环境的背景了:
接下来你就可以直接修改纹理环境的颜色,来改变背景的颜色了:
4、在创建无限地面的时候
这个算是在上面的创建纯色背景的基础上做了一些延伸。
例如我这里把之前隐藏的地面显示出来,既然是地面,那么肯定是需要保留对象的投影:
最简单直接的方法是给地面一个漫射材质,然后在通用里勾选蒙板,地面就会消失并且快速的捕捉到投影。
但是这个方法有很大的弊端,对象的上会丢失很多细节,大家注意观察透明材质的这个球体。
这是由于蒙板这个选项只会捕捉投影导致的:
比较好一点的方法是在漫射材质的透明通道里添加一个OC的渐变节点,当然你也可以使用C4D默认的渐变着色器。
但是C4D默认的着色器在OC中支持都不是特别好,会有一些小问题,所以这里推荐使用OC的渐变节点:
然后在渐变节点里添加一个径向渐变:
通过变换节点对径向渐变的尺寸进行放大:
调节渐变节点中的黑白位置:
最后在通过修改漫射通道的颜色模拟这种假的无限地面的感觉:
但是这种方法也不是最好的,特别是在你想要地面产生倒影的场景里:
并且因为实际上我们改变了地面的颜色,也就意味着改变了与对象的交互,而我们想要的仅仅是不要地面,且不改变地面与对象的交互。
所以最好的办法还是会用到分层渲染中的一些技法,由于我们本篇内容不会涉及分层渲染,以后有机会再分享吧。
虽然今天的内容不是案例,但是我觉得还是写的挺详细的了,下面是今天的视频版:
好啦,今天的内容就到这里,想要原视频的童鞋后台撩我获取吧
更多内容欢迎关注公众号:
本文由“野鹿志”发布
转载前请联系马鹿野郎
私转必究