UE4 材质学习笔记05(凹凸偏移和视差映射/扭曲着色器)

一.凹凸偏移和视差映射

1.偏移映射

这需要一个高度图并且它的分辨率很低,只有256*256,事实上,如果高度图的分辨率比较低并且有点模糊,效果反而会更好

然后将高度图输出到BumpOffset节点的height插槽中, 之后利用得到的UV进行贴图采样。现在移动摄像机的时候有一些视差移动,表面看起来不是平的,纹理坐标正在根据我的视角在移动。

下面是分别使用两种方法效果的对比,后者看起来更有起伏感

2.视差遮挡映射

这个方法更加消耗性能,但是效果也更好。

这里的Texture Obkect这个节点是告诉它我想用什么纹理,但是并没有采样,而Texxture Sample节点是对这个纹理进行了采样。因为纹理采样实际上在ParallaxOcclusionMapping节点中发生了多次,所以选择用Texture object。事实上它会在场景中进行光追,并且测算光线会碰到物体的什么位置,并且进行多个光线采样用于计算表面的最佳形状。HeighrMapChannel 表示用纹理的哪个通道,因为这是灰度图,所以哪个通道并不重要,给的值是R通道HigRatio表示突起的高度离表面有多远,另外minsteps和maxsteps分别决定了我竖直向下看和水平看的采样次数。HIghRatio越大应该给更多的采样次数来保证形状的完好。采样越多就会越消耗性能,但总的来说这非常节省性能了。

、即使视角很低也可以看到明显的凹凸效果

相关推荐
薛定e的猫咪30 分钟前
多智能体强化学习求解 FJSP 变体全景:动态调度、AGV 运输、绿色制造与开源代码导航
人工智能·学习·性能优化·制造
风兮雨露41 分钟前
一建学习流程以及计划(附资料)
学习
星幻元宇VR1 小时前
VR单人地震体验平台,学习科学避险
科技·学习·安全·vr·虚拟现实
坚持就完事了1 小时前
Hadoop实战初步学习
hadoop·学习
for_ever_love__2 小时前
UI学习:多界面传值的正向传值(属性传值)和反向传值(代理传值)
学习·ui·ios·objective-c
zhangrelay2 小时前
蓝桥云课五分钟-通关自动控制-octave
笔记·学习
jiayong232 小时前
第 36 课:任务详情抽屉快捷改状态
开发语言·前端·javascript·vue.js·学习
笔夏2 小时前
【安卓学习之混淆】记录一些混淆导致闪退
android·学习
南境十里·墨染春水2 小时前
linux学习进展 进程间通讯——共享内存
linux·数据库·学习
光影少年2 小时前
中级前端需要会的东西都有那些?
前端·学习·前端框架