UE4 中 Render Target的 用法

**

UE4 中 Render Target的用法

**

一, 用法

主要使用此指令实现在某个平面上进行绘画操作 或者实现 刮刮乐的效果,基本上都需要用到此方面的相关知识。

二, 使用流程

1, 先 定义一个 Canvas Render Target 2D , 可以理解为一个画布 RT。
2, 定义一个材质Mat_1。 这个材质中 我们将 Texture 部分设置为一个变量。后面我们将 画布和此材质进行绑定,画布作为材质中 Texture 的一个变量(此部分在后续蓝图中进行操作。)。

2, 在一个蓝图中 初始化的时候, Draw Material To Render Target 。 这一句指令 一开始很拗口,有点绕。但是从常识方面进行判断,个人理解。就是把 材质Mat_1 和 画布进行了一个绑定,如果理解为 把画布赋值给材质反而从逻辑上更好理解一些。
同时 ,还需要记得 将材质 设置为 动态材质实例。 这样后面才可以 随时更改 材质中的 变量
UE4 中 Render Target的 用法_第1张图片
UE4 中 Render Target的 用法_第2张图片

3, 在上一步绑定的基础上 ,我们 调用 Set Texture Paramter Value .
Target —————— Mat_1
Value ——————— RT
Paramter——————“Texture” : 这是一个字符串
直观上理解 就是 将 画布 赋值为 材质中 的变量 Texture 。画布上的变化 将会直接影响到材质的变化。

4,Panit 函数。 这是一个自定义功能函数。
核心思想:
(1) 鼠标左键按下的时候, 获取鼠标当前的点 和上一个时刻的点 ,做一个连线。
上面的蓝图函数 是对原来函数的重载。 主要做了两个工作。

  • 设置bool 变量,判断当前是否为按下状态。

  • 获取当前鼠标点击时, 在屏幕上的坐标点。

    (2) 调用 Draw Canvas to Render Target 和 End Canvas to Render Target
    UE4 中 Render Target的 用法_第3张图片

UE4 中 Render Target的 用法_第4张图片

(3)在 Tick 中进行调用。 根据bool 变量 ,调用 paint
paint 需要输入 两个坐标点 。一个是当前鼠标在屏幕上坐标点 ,另一个是鼠标按下的时候的 坐标点 last positon 。

UE4 中 Render Target的 用法_第5张图片

(4) 材质的一些设置

UE4 中 Render Target的 用法_第6张图片

因为此项目是要实现一个在三维场景中随时进行绘画的功能。实际上 是调用一个UMG . 在UMG 上贴了一张透明的图。 这张图的 材质设置 就是上面的箭头标注的地方。

小知识“:
Alpha 通道是透明度。值越大,就越不透明;范围是 0~255,即 255 是不透明,0是全透明。
当对应 RGB 颜色时,Alpha 会叠加到颜色上面;只有当 Alpha 通道是255时,才是其真正的颜色。比如 RGB = #FF0000 时,Alpha = 255,则才是全红,当Alpha 逐渐变小时,颜射也开始逐渐变淡,知道最后看不见为止。
有点不好理解,需要测试。

你可能感兴趣的:(Ue4,常规技术)