UE4中监视器 和镜子的 实现效果 SceneCapture2D的用法

**

UE4中监视器 和镜子的 实现效果 SceneCapture2D的用法v

**

一,目的
为了实现在虚拟场景中 创建一个监视器或者一个反光镜的效果。 此处需要用到一个 sceneCapture2D 组件。

二,测试环境

UE4 4.24

三,思路

1, SceneCaptue2D 组件 可以理解为一个 获取二维画面的摄像机组件(只是个人理解,因为她的样子就是一个摄像机),这个组件有一个选项是 Texture Target , 就是将获取的画面存储的地方。 这个Texture Targrt 是一个Render Target 类型。
2, 如果我们想一面镜子, 我们将镜子的材质设置成动态材质。 通过给这个动态材质(其实就是镜子的材质) 中的 base color 赋值成 上面的 Texture Target 就可以实现这个效果。注意: Base Color 对应的 应该一个参数化的变量, 这样在 动态材质赋值的时候, 就可以直接进行赋值了。

四,步骤

1, 镜子的自身材质
在这里插入图片描述
注意:
(1)我们在这个材质中设置了三个变量。 前面两个 有可能是宽高比, 个人没看到具体的效果。可以测试。 这个材质可以创建实例, 实例中直接设置 宽高, 例子中 一个长宽2:1 的 镜子, 对应的材质实例 分别是 1.4 和0.7 ,玄机等待测试。 注意 水平方向 取反, 因为镜子获取的是镜像。

2, emissive 例子中也设置了参数, 其实可以直接设置成固定的。

2,给sceneCapture2D 创建对应的 Target

(1)这是一个 renderTarget 类型

在这里插入图片描述
以为我的镜子是竖直方向的。 所以 宽高比例 我按照上面设置。

在这里插入图片描述
上面是蓝图中创建的 SceneCapture2D 组件。 将Target 设置成我们创建好的。

红色现况圈出来的,是为了优化性能。 如果 每一帧都捕捉,耗能会比较大。 所以,我们只勾选了 在运动的时候捕捉就行。

3, 蓝图中 创建动态材质实例的过程——接通

(1)动态材质实例

在这里插入图片描述
模型有可能会有多个材质,所以要注意Material 下面的 Index 的序号。
在初始化中,创建了动态材质实例后,就可以进行赋值了。

(2)参数化赋值

在这里插入图片描述

将 SceneCapture2d 对应的 render target 给动态材质赋值, 完成了镜子的材质就是 摄像机获取的材质的效果。

最终效果:

在这里插入图片描述

以前一位朋友跟我说过这个, 至今我能记起来的就是他说的:这个很简单…, hi my friend ,are you ok?

  • 1
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值