任何的学习,光看不练是学不好的。所以这次就总结回顾下怎么制作MMROPG类游戏中的小地图。在MMROPG类游戏里,主角在游戏世界里走动时,一般在屏幕右上角都会有一个区域来显示当前游戏场景的小地图。主角在游戏世界里走动,小地图里代表着主角的小标记也会随之移动。那怎么实现咧?
首先需要确定两个贴图,第一个是右上角的小地图背景贴图,应该是从Y轴俯视向下截取主角所在的位置大地图。第二个就是主角的位置大贴图。在本例中,因为没有学习unity地图制作,所以地图用一个面对象代替,主角用立方体代替,使用GUI来控制主角的移动。右上角小地图,中间的红色矩形代表着主角。通过小地图的宽,高,与真是地图的宽高计算出缩放比例,从而根据缩放比例来确定主角在小地图中的位置。
代码:
using UnityEngine;
using System.Collections;
public class Script_04_17 : MonoBehaviour
{
//大地图地形对象
GameObject plane;
//大地图主角对象
GameObject cube;
//大地图的宽度
float mapWidth;
//大地图的高度
float mapHeight;
//地图边界的检测数值
float widthCheck;
float heightCheck;
//小地图主角的位置
float mapcube_x =0;
float mapcube_y = 0;
//GUI按钮是否被按下
bool keyUp;
bool keyDown;
bool keyLeft;
bool keyRight;
//小地图的背景贴图
public Texture map;
//小地图的主角贴图
public Texture map_cube;
void Start