[材质] 关于材质遮罩和材质function

[复制链接]
查看10512 | 回复14 | 2017-12-30 20:43:50 | 显示全部楼层 |阅读模式
[img]file:///F:\qq\3239490787\Image\Group\Image2\P[%G`AV@Z@1`ZH90W%2]681.png[/img]如图,我想通过材质的球状遮罩,不在模型上面动功夫而是在材质上,让球体自转的同时通过添加一个黑色球状遮罩来模拟地球白天黑夜的情况。关于材质function方面的内容,官方文档并没有给出一些示例,基础不好的我并不是很能理解然后实现我想要的功能·
我想实现的功能:
①把遮罩的颜色编辑为黑色
②现在这个遮罩的轴是在x-y平面上的,我想把它旋转使得它与z轴平行(因为目前就算是把遮罩的颜色改变,天黑的地方也是不正确的,本人尝试用Texturecoordinate或rotator解决,但效果不理想)

材质节点

材质节点

目前效果

目前效果
cg_bull | 2017-12-31 20:12:22 | 显示全部楼层
你是想弄一个太阳系那种地球围绕太阳背面是黑色的自传的同时阴影会变是么??
回复 支持 反对

使用道具 举报

cg_bull | 2017-12-31 20:23:45 | 显示全部楼层
如果是的话你在材质里面用一个三维向量减去物体的Pos然后Normalized一下最后DotNormal即可得到遮罩Mask。最后送你一个我的实现。
09716CA3-C344-41F8-9985-44DDADAB63D2.JPG

点评

谢谢,已解决  发表于 2018-1-4 00:18
回复 支持 反对

使用道具 举报

画中游仙 | 2018-1-2 09:50:27 | 显示全部楼层
本帖最后由 画中游仙 于 2018-1-2 09:56 编辑

我用的方法  三维向量控制明暗方向  dot到 pixelNormal上  得到遮罩  遮罩与fresnel 相乘  再加上遮罩  然后与固有色贴图相乘
qqqqqq_看图王.jpg
wwwwww_看图王.jpg

点评

谢谢,已解决  发表于 2018-1-4 00:18
回复 支持 反对

使用道具 举报

cg_bull | 2018-1-2 14:02:38 | 显示全部楼层
画中游仙 发表于 2018-1-2 09:50
我用的方法  三维向量控制明暗方向  dot到 pixelNormal上  得到遮罩  遮罩与fresnel 相乘  再加上遮罩  然 ...

你在Direction后面再减去WorldPosition。然后做一个Actor蓝图里面吧自己的位置传递给Direction。这样你可以再场景里面实时移动Direction了就
回复 支持 反对

使用道具 举报

cg_bull | 2018-1-2 14:03:43 | 显示全部楼层
画中游仙 发表于 2018-1-2 09:50
我用的方法  三维向量控制明暗方向  dot到 pixelNormal上  得到遮罩  遮罩与fresnel 相乘  再加上遮罩  然 ...

而且你乘菲涅尔干嘛?做大气雾霾?那种东西应该去专门弄一层渲染。直接加菲涅尔很挫的
回复 支持 反对

使用道具 举报

画中游仙 | 2018-1-2 14:24:35 | 显示全部楼层
本帖最后由 画中游仙 于 2018-1-2 14:27 编辑
cg_bull 发表于 2018-1-2 14:03
而且你乘菲涅尔干嘛?做大气雾霾?那种东西应该去专门弄一层渲染。直接加菲涅尔很挫的 ...

大佬 专门做一层渲染怎么做?  我试过用插片和面对摄像机的面片  做出效果很假  面片感太强
回复 支持 反对

使用道具 举报

我会为何弃疗 | 2018-1-3 21:37:00 | 显示全部楼层
没想到好几天没上竟然有大神解答了我的疑惑,不过小弟在月下幻影前辈的帮助下通过菲涅尔反射获得alpha通道信息lerp实现了该功能
附上使用菲涅尔反射实现选区的节点图,使用该方式可以直接通过修改固定光源方向来带动遮罩的运动,不过固定光源要先开启该开关

使用两位前辈的节点同样也能得到想要的结果,bull前辈的把actor蓝图位置信息传送给direction应该是和固定光的这个开关有关吧....


再次谢谢Cg bull 和画中游仙的热心回答

遮罩节点

遮罩节点

固定光方向输出功能开关

固定光方向输出功能开关
回复 支持 反对

使用道具 举报

Ecg- | 2018-1-3 22:37:54 | 显示全部楼层
cg_bull 发表于 2017-12-31 20:23
如果是的话你在材质里面用一个三维向量减去物体的Pos然后Normalized一下最后DotNormal即可得到遮罩Mask。最 ...

大佬,地球和太阳表面的光晕是怎么实现的,是用bloom吗?
回复 支持 反对

使用道具 举报

我会为何弃疗 | 2018-1-4 00:18:02 | 显示全部楼层
Ecg- 发表于 2018-1-3 22:37
大佬,地球和太阳表面的光晕是怎么实现的,是用bloom吗?

我来答一个吧,算是交作业。做得不好请多多指教(部分内容借用了advanced space shader素材包)

我的方法是再弄一个球和原来的地球组成一个actor。因为大气的颜色应该是黄绿色(臭氧层),所以用了黄绿色的次表面散射(不过好像做出来之后和直接白/黄光给基础颜色和并没有什么区别)当然你也可以用subsurface profile达到一样的目的。

一样使用菲涅尔获得目的alpha遮罩,即连接到想要插值的lerp节点alpha

以上

实际效果

实际效果
搜狗截图20180104001043.jpg
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

13

主题

455

回帖

955

积分

初阶编码师

积分
955