在本期,我将分享有关实现【游戏中小地图】的两种方法。
首先,先来理清一下思路:
①小地图共分为两种,一种是实时可以看到的,类似一个相机,一种是在一个2D平面地图展开图中,有一个小坐标可以展示当前玩家的位置。关于实时地图,类似一个【监控摄像头】,可以看到除了玩家控制器看到的其他视角,比如后侧等其他视角。
②第二种涉及到算法,我们需要制作一个Widget,通过更改小图片的位置来更新坐标,将当前角色的世界坐标和平面小地图的平面坐标 【归位】,准确来讲就是【将他们的坐标点】重合在一起,通过等比例的变化,设置Actor的【Translation】和【Transform】
新建一个Widget控件,拖入【Canvas Panel】,并设置好锚【锚点】以做自适应,锚点定位在左上角

接着,回到角色的蓝图类中,添加节点【Scene Capture Component 2D】节点,这个节点会在角色的头顶上挂一个摄像机,我们可以用它做出各种各样的效果。

添加好之后,选择【Texture Target】,即目标纹理,这里我们需要自己新建一个画布纹理
选择第一个,【画布渲染目标】
可以看到

创建好纹理后,我们需要新建一个材质,来应用这个纹理


在制作好纹理后,我们就可以带着我们做好的纹理,去给UMG贴材质啦
回到UMG控件蓝图中,找到我们的【Image】

当我们将UMG的材质替换后,回到视口运行游戏,小窗口的效果就制作完成啦!
