虚幻UE 材质-进阶边界混合之运行时虚拟纹理

之前在学习空山新雨后时对于边缘虚化过渡处理有很多技术
今天又要介绍一个边缘过渡的方法:运行时虚拟纹理

文章目录

  • 前言
  • 一、运行时虚拟纹理
  • 二、使用步骤
  • 总结


前言

边缘过渡柔和的方式我们之前介绍了很多,但是效果也不是最好的。
像素偏移PDO和我们今天的前提是一致的
世界对齐纹理需要两个材质相同
基于距离场对像素偏移PDO只能是交界处阴影

本次使用 运行时虚拟纹理 可以达到两个材质不同
一个材质在另个材质上叠加

一、运行时虚拟纹理

运行时虚拟纹理(Runtime Virtual Texture)是一种在游戏或应用程序运行时动态生成的纹理。与传统的运行时纹理不同,运行时虚拟纹理使用GPU按需生成和缓存纹理数据,以实现更高效和灵活的纹理管理。
通过使用运行时虚拟纹理,开发者可以在运行时动态地生成和缓存纹理数据,从而避免了重复加载和卸载纹理的开销。这有助于提高游戏的渲染性能,减少加载时间和卡顿现象。

二、使用步骤

效果展示:(地面为草(Uv没调,所以地面不真实),柱子是土)
虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第1张图片
虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第2张图片

1、创建两个运行时虚拟材质
虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第3张图片
虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第4张图片虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第5张图片
运行时虚拟材质:
1、需要蔓延的材质(V_M)
2、蔓延的长度的材质(VM_H)
注意:纹理大小越大效果越好,蔓延长度的记得更改纹理内容

2、把需要蔓延的材质设置给物体
虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第6张图片

3、在场景中增加运行时虚拟纹理体积

通过吸管吸取需要蔓延的物体所设置的虚拟纹理,然后设置边界
注意:如果这里不设置,会产生和基于距离场对像素偏移PDO的方式一样,边界是阴影过渡。

4、需要蔓延处的材质修改
虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第7张图片
使用材质属性是因为我们要截止需要他们处理需要蔓延的材质的世界中的高度

5、到被蔓延的材质内设置被蔓延部分的控制
虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第8张图片
我们可以看出是通过Lerp节点使蔓延材质和被蔓延材质的过度
1、新的蔓延材质
设置给RuntimeVirtualTextureSample,设置UV是因为让过渡更自然
虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第9张图片 2、被蔓延材质的基础颜色(不需要讲)
3、高度控制
虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第10张图片
获得被蔓延物体可以被蔓延的长度
虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第11张图片
控制蔓延的长度和蔓延的过度
虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第12张图片
最后把他们固定到0和1之间供Lerp使用
虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第13张图片

6、被蔓延材质生成材质实例赋给模型
虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第14张图片
虚幻UE 材质-进阶边界混合之运行时虚拟纹理_第15张图片

总结

扩展了边界混合新方式
材质真难啊啊啊!!!

你可能感兴趣的:(#,UE_材质,虚幻,材质,游戏引擎,ue4,ue5,虚拟纹理,边缘过渡)