实现的效果如下图,我们将场景中的角色显示在了UI上,且不显示其他背景
首先,创建一个第三人称模板,打开角色蓝图,添加一个场景采集组件2D(SceneCaptureComponent2D)
将其置于角色的前面,朝向角色(可以想象成摄像机,这里就是做图像的采集)
该组件的细节面板中有这几个参数需要重点看一下:
Texture Target:这里是把相机采集到的图像传出去,可以是RenderTarget、CanvasRenderTarget、
CompositeMode:这个是图像合成模式,使用默认即可,可以自己调试看看
PrimitiveRenderMode:渲染模式,HiddenActors数组和ShowOnlyActors数组在细节中选不到,需要到蓝图中进行设置
CaptureSource:捕获源
这里选用白名单的方式,即在白名单中添加角色蓝图,
给白名单添加名单的方式有:
1.直接ADD Actor,添加想要渲染的组件
2.Set该数组,并把数组公开给编辑器,在场景中添加想要渲染的Actors
制作渲染结果的RenderTarget和材质
创建RT:以下两种资源都可以
把相机捕捉到的结果传给RT
RenderTarget中有几个参数需要注意:
SizeX/Y:渲染纹理的分辨率,这个数值越高纹理越清晰,当然性能消耗也越高
RenderTargetFormat:渲染目标格式,默认即可,也能自行调整:8位、16位、32位
TextureGrupd:选择UI
利用渲染结果创建材质球
采集的目标Alpha为0,没采集到内容的Alpha为1,透明度进行反转
创建UMG蓝图
添加Image图片控件,选择刚刚创建的材质球
关卡蓝图中将UMG显示到屏幕上
将角色蓝图放入场景查看效果:(只捕捉角色,因为白名单只有角色,可以根据自己的情况选用白名单/黑名单/场景内容,以达到不同的效果)
只捕捉角色
捕捉所有内容
捕捉内容排除角色
文章
10.55W+人气
19粉丝
1关注
©Copyrights 2016-2022 杭州易知微科技有限公司 浙ICP备2021017017号-3 浙公网安备33011002011932号
互联网信息服务业务 合字B2-20220090