在UE5中使用视差贴图

视差贴图是一项不用改动模型顶点,通过对相机向量进行计算、修改通过视差实现模型凹凸感的技术,通常运用于地面,配合法线贴图增强凹凸表现。

UE中封装了视差贴图节点ParallaxOcclusionMapping,可以很方便的制作出效果较好的视差效果。

(左 未开视差,右 开启POM视差)

1.视差贴图的类型

视差贴图实现及性能消耗方面从易到难,大致有几种类型:

  • 基本视差映射,对观察向量结合高度图,乘以一个系数进行拉伸,实现起来最简单,开销也最低。
  • 陡峭视差映射,通过多次循环迭代采样,可以实现遮蔽效果,但性能最差
  • 浮雕视差映射,多次循环迭代采样,但做了二分法优化,性能较差
  • POM视差遮蔽映射,UE中采用的方案,结合陡峭视差和浮雕视差,做了步进迭代优化,性能和画面适中的一种方案

2.视差实现

UE并没有将视差作为输出节点开放,而是通过计算视差的节点得到偏移后的UV等信息,节点如下:

简单起见,没有开启视差阴影。其中HeightRatio表示视差偏移量。MaxSteps设置较高会影响性能,一般设置32较合理。HeightmapTexture为传入高度图。

这里使用一张白色方块贴图,测试视差效果:

可见,是通过类似视觉偏移的方式,采样多次实现视差感。

最后,看一下视差节点得到的数值如何输出:


出处参考:https://www.bilibili.com/video/BV1Va4y1f7i5

相关推荐
iconball8 小时前
个人用云计算学习笔记 --19 (MariaDB服务器)
linux·运维·笔记·学习·云计算
Lynnxiaowen8 小时前
今天我们开始学习python3编程之python基础
linux·运维·python·学习
少吃一口都不行9 小时前
脚手架学习
前端·javascript·学习
东风西巷9 小时前
Avast Cleanup安卓版(手机清理优化) 修改版
android·学习·智能手机·软件需求
报错小能手10 小时前
linux学习笔记(21)线程同步——互斥锁
linux·笔记·学习
『往事』&白驹过隙;11 小时前
浅谈内存DDR——DDR4性能优化技术
科技·物联网·学习·性能优化·内存·ddr
callJJ11 小时前
缓存雪崩、击穿、穿透是什么与解决方案
缓存
明明真系叻12 小时前
《量子计算》学习笔记:量子计算的基本定义(续)
笔记·学习·量子计算
如竟没有火炬12 小时前
LRU缓存——双向链表+哈希表
数据结构·python·算法·leetcode·链表·缓存
阿湯哥13 小时前
Redis数据库隔离业务缓存对查询性能的影响分析
数据库·redis·缓存