UE5 两种方式解决Decal Actor贴花拉伸问题

在使用Decal Actor组件放置贴花时,常会遇到拉伸(竖纹)问题。以下是两种常见的解决方法

1.法线阈值遮罩

该问题的原因在于绘制平面与投射Actor之间的夹角过小。可以通过修改Decal Actor的材质球,获取当前绘制平面的法线并计算点乘,再乘以遮罩来避免拉伸 。应用该材质后,拉伸现象即可消失。

运用该材质球后,拉伸效果消失:

需要说明的是,使用世界坐标的DDX和DDY来求当前法线,是因为直接通过法线节点获取到的是Decal Actor自身的法线,而非绘制平面的法线。

2.三平面投影

根据项目需求,也可以采用三平面投影的方法来避免拉伸。

该方法同样需要用到上一步中获取的法线信息。

Decal默认会自带边缘淡出效果,但这个效果不太理想,也不好调,因为UE把逻辑写死在源码里了。这时候可以通过Decal Actor自身的位置和WorldPosition做对比来手动修改。

相关推荐
red_redemption2 小时前
自由学习记录(172)
学习·cache line 64b·重用距离
棪燊2 小时前
Unity的Game视图在Scale放大后无法拖动
unity·游戏引擎
阿荻在肝了3 小时前
Agent学习六:LangGraph学习-持久化与记忆一
python·学习·agent
妙为3 小时前
UE5中武器未跟随角色
ue5·gas·gameplay
weixin_423995004 小时前
unity 团结开发小游戏,加载AssetBundles
unity·游戏引擎
寒秋花开曾相惜5 小时前
(学习笔记)4.1 Y86-64指令集体系结构(4.1.4 Y86-64异常&4.1.5 Y86-64程序)
开发语言·jvm·数据结构·笔记·学习
莹宝思密达5 小时前
【AI学习】 playwright-cli + SKILL 替换 chrom-devTools-MCP
学习
cyr___5 小时前
Unity教程(二十七)技能系统 黑洞技能(下)黑洞状态
学习·游戏·unity·游戏引擎
豆瓣鸡7 小时前
Gradle学习
学习