UE的交互式痕迹(交互雪)

UE的交互式痕迹主要通过绘制RT(Render Target)来实现,我们以交互雪为例来实现交互式痕迹,交互草、交互水等的整体逻辑大同小异。

1. 绘制痕迹

首先创建一块画板,即创建一张RT。

在这里插入图片描述

同时创建一个画笔,即一个Scene Component的蓝图,因为Scene Component有变换的坐标,能组加到人物身上。

在这里插入图片描述

我们在“画笔”中,从上到下发出射线检测,来模拟雪的深度带来的绘制影响。

在这里插入图片描述

在这里插入图片描述

在画板中,主要使用Event Tick对每帧进行绘制,首先Update Location更新画板的位置,并让画板跟随人物移动。
注意:画板永远要跟随人物移动,因此UV只在人物周围,并跟随人物移动,同时UV的边界要完成消融模糊的处理。

在这里插入图片描述

因为画板跟随人物移动,所以我们需要保存上一帧的RT,先把RT绘制到另一张RTSave上,然后对RTSave进行UV平移,再绘制回RT上。

在这里插入图片描述

在这里插入图片描述

最后我们把画的图案,通过材质创建出来,并且传入高度,让其在脚踩下去的时候通过射线检测返回Distance来运算这个生成的痕迹应该有的明暗。

在这里插入图片描述

在这里插入图片描述

我们将场景的Snow材质写出来。

在这里插入图片描述

在这里插入图片描述

将场景材质,赋予所要用的场景上。

在这里插入图片描述

至此,我们就已经实现了与场景的痕迹绘制。

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_45617648/article/details/131110031