首先新建一个Camera,这里命名为MiniMapCamera,将该Camera的Projection改成Orthographic,然后适当调节Position的Y轴位置。MiniMapCamera的Size值越大(为负值时相当于Y轴旋转180度),地图缩放越大,摄像机可视范围越大,Size越小,地图缩放越小,摄像机可视范围越小。然后在Asset文件夹下新建一个RenderTexture,这里命名为MiniMapTest,拖拽到MiniMapCamera的TargetTexture属性上去。
在Hierarchy面板中右键从UI中新建一个RawImage,调整位置到右上角,将上述新建的MiniMapTest拖入RawImage的Texture属性即可。
此时我们进入游戏发现小地图确实存在,但是却不会随着我们人物的移动而移动,此时我们给MiniMapCamera挂载一个FollowTarget脚本,将需要跟踪的人物的拖拽到FollowTarget的Target属性即可, 代码如下
public class FollowTarget : MonoBehaviour
{
public Transform target;
private void LateUpdate()
{
transform.position = new Vector3(target.position.x, transform.position.y, target.position.z);
transform.rotation = Quaternion.Euler(new Vector3(90, target.eulerAngles.y, 0));
}
}
这个时候我们可以创建一个有颜色的球体代表玩家,这样就可以了。
这个时候就可以看到球体所代表的玩家在小地图上面移动了。