[UE4]使用另一个相机Scene Capture Component 2D当小地图

挂一个相机(Scene Capture Component 2D)在人物角色的正上方,相机朝下,让UI上的某一块区域看到相机所显示的内容。

一、在人物角色正上方添加相机组件Scene Capture Component 2D,并旋转相机朝下(X轴方向是相机照射的方向)。

 二、创建一个一个Render Target,把Scene Capture Component 2D相机照射到的景象复制到Render Target中去。

三、设置第一步创建的Scene Capture Component 2D相机的Scene Capture为第二步创建的Render Target

 四、编译,可以看到Render Target已经显示相机照射的景象了。

五、在第二步创建的RenderTarget上右键,选择“Create Material”(创建一个基于RenderTarget的材质)

 

六、编辑上一步创建的材质TopDownRenderTarget_Mat,设置属性“Material Domain”为“Uer Interface”,如此该材质才可以在UI上使用。做完这一步记得先保存

七、创建一个UserWidget,在左上角放一个Image组件,并设置Brush的Image为上一步创建的材质TopDownRenderTarget_Mat

八、在关卡蓝图的Event BeginPlay事件中把上一步创建的UserWidget添加到界面

 

九、运行游戏,完成小地图功能。

 十、Scene Capture Component 2D相机的Projection投影,默认Projection Type投影类型是是Perspective透视(三维视图,近大远小),小地图一般都是正交Orthographic(二维视图)

十一、可以修改Scene Capture Component 2D相机的Projection Type为Orthographic(正交视图),这时候,相机的视野范围跟相机距离地面无关,只跟Ortho Width属性值大小有关(值越大,看到的景色越多,距离也就越远)。

Projection Type为Perspective,则相机的视野范围跟相机距离地面有关。

 

注意,在编辑模式能正常捕捉到画面,但是发布后可能会捕捉不到画面,使用新建材质的方法即可解决问题。

 

posted on 2018-11-26 10:18  一粒沙  阅读(8177)  评论(0编辑  收藏  举报