(一)小地图制作原理:
等比例映射:
(二)制作过程:
(1)建立Terrian,Player,小地图
(2)在sit中挂载实时移动脚本
public class SmallMapdemo : MonoBehaviour {
/*1.Player-地形位置=Player相对于地形的位置
* 2.player相对于地形的位置X/地形的宽=x的比例
* 3.player相对于地形的位置Z/地形的长=y的比例
* 4.背景图片的宽*X的比例=背景图片中圆形的位置
* 5.背景图片的长*Y的比例=背景图片中圆形的位置
*/
public Transform player;
public Terrain terrain;
//获取小地图的长宽
RectTransform parentRect;
float tmpRateX;
float tmpRateY;
Vector2 resultPos = Vector2.zero;
void Start () {
parentRect = transform.parent.GetComponent<RectTransform>();
}
// Update is called once per frame
void Update () {
Vector3 deltaPos = player.position - terrain.transform.position;
tmpRateX = deltaPos.x / terrain.terrainData.size.x;
tmpRateY = deltaPos.z / terrain.terrainData.size.z;
resultPos.x = parentRect.sizeDelta.x * tmpRateX;
resultPos.y= parentRect.sizeDelta.y * tmpRateY;
transform.localPosition = resultPos;
}
}