目录
效果

步骤
一、视角切换
-
新建一个Basic关卡,添加第三人称游戏资源到项目浏览器
-
新建一个Actor蓝图,这里命名为"BP_SecurityCamera"

打开"BP_SecurityCamera",添加如下4个静态网格体,组成一个摄像头的基本外形


给摄像头镜头一个红色材质


添加一个摄像机组件让其处于摄像头镜头位置

- 在世界场景设置中设置游戏模式重载为"BP_ThirdPersonGameMode"

- 新建一个玩家控制器,这里命名为"MyPlayerController"

打开"MyPlayerController",在事件开始时就获取摄像头的对象引用

- 打开第三人称角色蓝图"BP_ThirdPersonCharacter"

在事件图表中添加如下节点,表示通过F键来切换第三人称角色和摄像头之间的视图

- 像场景中放置一面墙,将""放置在墙面上

此时运行游戏可以发现能够切换摄像头视角和角色视角

- 返回"BP_ThirdPersonCharacter",添加如下节点,表示当视角转移到摄像头上时,设置角色无法移动,当视角返回时设置角色可以行走

二、摄像头画面后期处理
打开"BP_SecurityCamera",选中摄像机组件,设置"晕映强度"为1

设置饱和度为0

"胶片粒度强度"设置为1,"胶片粒度纹素大小"设置为3

此时摄像头视角画面效果如下:

三、在场景中显示摄像头画面
- 复制一份"BP_SecurityCamera",这里命名为"BP_SecurityCamera_2",该摄像头的功能是显示拍摄的画面

打开"BP_SecurityCamera_2",删除摄像机组件,添加场景捕获组件2D

设置场景捕获组件2D的位置同样在摄像头镜头位置

新建一个"渲染目标"

这里命名为"TextureRenderTarget2D_SecurityCamera"


- 打开渲染目标"TextureRenderTarget2D_SecurityCamera",设置纹理渲染目标尺寸为1920x1080

- 对这个纹理目标创建一个材质

命名为"Mat_TextureRenderTarget2D_SecurityCamera"

- 向场景中放置一个平面表示屏幕,该屏幕显示摄像头拍摄的画面,再将"BP_SecurityCamera_2"也放到墙上

设置平面材质为"Mat_TextureRenderTarget2D_SecurityCamera"

此时运行游戏可以看到屏幕可以正常显示摄像头拍摄的画面

参考视频: