前言:
- 小地图是一些游戏中必不可缺少的元素,如何使用unity做出一个简单好用的小地图,来看看吧
效果展示:
本案例的小地图的实现原理是使用Camera生成一张渲染器材质,同时使用UI元素Raw Image来表现出来,完成效果如图:
实现:
创建一张渲染器纹理
什么是渲染器纹理:
- 渲染纹理是特殊的贴图在运行时创建和更新的文件。要使用它们,首先要创建一个新的“渲染纹理”并指定一个摄影机渲染到它
在Project面板右键选择Create创建然后选择Render Texture,就可以创建一张渲染器纹理:
创建相机作为渲染相机:
接下来要创建一个相机作为渲染器纹理的渲染相机,步骤为创建相机后,将刚刚创建好的Render Texture拖入相机中的Target Texture中,如图:
这样渲染纹理可以实时的获取相机中的内容,为了使得相机可以与角色保持一致,可以编写代码使得相机一直保持在角色的头顶:
public Transform player;
// Update is called once per frame
void Update()
{
transform.position = player.position + new Vector3(0, 6, 0);
}
将渲染材质显示在UI界面上:
首先创建一个Image与Raw Iamge的层级关系,同时给Image添加Mask组件,这样可以通过Source Image来影响地图的形状:
注:
- Mesh相当于一个面具,遮罩将子元素限制(即“遮罩”)为父元素的形状,因此,如果孩子比父母大,那么只有适合孩子的部分才可见
具体操作的图示为:
然后就是对于Raw Image的设置,可以将渲染器纹理直接赋予Raw Image元素的Texture,这样就可以在界面上显示小地图了,具体操作如图:
结束:
这样就可以成功完成对于一个小地图的设置工作,赶快在自己的项目中试试吧
我是心之凌儿,欢迎关注收藏点赞!