Unity3D技巧之小地图的实现

Unity3D技巧之小地图的实现

 首先在UI画布下创建一个空物体改名叫Minmap。并在Minmap下创建Raw Image用来做遮罩。

. Unity3D技巧之小地图的实现_第1张图片
然后再建立一个Sprite于Player的子对象下并且改名为icon, 设置Layer为icon。用来作为游戏主人公的在小地图的标识,并把制作好的icon箭头应用于Sprite中(导入的图片记得改为Sprite(2D and UI格式 )。设置好后旋转合适角度并拉到player正上方一段距离。

Unity3D技巧之小地图的实现_第2张图片

新建一个Camera 改名为MinpapCam(用作跟随Player的摄像机)并适当调整位置。
调整MinmapCam相机的Culling Mask为地形 icon什么的(想在小地图出现什么选什么)
新建一个Render Texture于Project面板中并托给MinmapCam的Target Texture中。
新建Minmap脚本拖给MinmapCam。并把icon拖给Minmap中。 Unity3D技巧之小地图的实现_第3张图片
代码如下
using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Minmap : MonoBehaviour
{

    private Transform newtransform;
    public GameObject icon;
    void Start()
    {
        newtransform = GetComponent();
    }

    void Update()
    {
        transform.position = new Vector3(icon.transform.position.x, 25f, icon.transform.position.z);//修改摄像机的位置 需要适当调整。
    }
}

再把Render Texture拖给Raw Image。 Unity3D技巧之小地图的实现_第4张图片

基本已经实现了如果要圆形的话给画布下的Minmap加个Mask遮罩就好了。然后再加个边框什么的。
Unity3D技巧之小地图的实现_第5张图片



你可能感兴趣的:(Unity技巧)