在UE5中使用视差贴图

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

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

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

1.视差贴图的类型

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

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

2.视差实现

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

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

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

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

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


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

相关推荐
Mabnus6 小时前
细胞骨架协调蛋白VIM
学习
indexsunny7 小时前
互联网大厂Java求职面试实战:Spring Boot微服务与Redis缓存场景解析
java·spring boot·redis·缓存·微服务·消息队列·电商
起名时在学Aiifox13 小时前
Vue 3 响应式缓存策略:从页面状态追踪到智能数据管理
前端·vue.js·缓存
xiaobai17813 小时前
测试工程师入门AI技术 - 前序:跨越焦虑,从优势出发开启学习之旅
人工智能·学习
北岛寒沫13 小时前
北京大学国家发展研究院 经济学原理课程笔记(第二十一课 金融学基础)
经验分享·笔记·学习
扑火的小飞蛾14 小时前
网络安全小白学习路线图 (基于提供文档库)
学习·安全·web安全
优雅的潮叭14 小时前
c++ 学习笔记之 malloc
c++·笔记·学习
薛不痒15 小时前
深度学习之优化模型(数据预处理,数据增强,调整学习率)
深度学习·学习
ChineHe15 小时前
Redis数据类型篇002_详解Strings核心命令与存储结构
数据库·redis·缓存
昵称已被吞噬~‘(*@﹏@*)’~16 小时前
【RL+空战】学习记录03:基于JSBSim构造简易空空导弹模型,并结合python接口调用测试
开发语言·人工智能·python·学习·深度强化学习·jsbsim·空战