Unity3D之UGUI——利用Camera与RawImage组件制作3D游戏小地图

对于场景较大的3D场景游戏,玩家不能够全局观察自己与敌人的位置以及地图全貌,因此制作小地图显示自己与敌人在地图上的位置是必要的!

      现在我就利用一个小的Demo来制作一小地图,我在制作中查阅了网上资料,制作了一个demo,但是由于只能显示在我添加在Tank物体上的第一人称的Camera的近裁面上,这样的话,当我在运行游戏时,控制Tank运动时,小地图经常被场景中的物体遮挡,为了解决这个问题,我想到了利用RawImage组件,因为该组件能够渲染动图与视频纹理。这样来做还更加方便。

OK,让我们在unity中演示制作一下,so easy!


首先在场景中创建一个新的Camera调整其方向,使其能拍摄到整个地图,如图:


Unity3D之UGUI——利用Camera与RawImage组件制作3D游戏小地图_第1张图片


接着点击菜单Assets----->Creat------>Render Texture 这时在Project面板会出现一个New Render Texture ,我将其改名为camera_map


然后点击我们创建的摄像机Camera_map,将刚刚创建的Render Texture渲染纹理camera_map拖动到摄像机Camera_map组件下的Target Texture处。


Unity3D之UGUI——利用Camera与RawImage组件制作3D游戏小地图_第2张图片


接着在hierarchy面板创建一个Canvas,并改名Canvas_tankState_UI,将其Render Mode设为Screen Space -Overlay


Unity3D之UGUI——利用Camera与RawImage组件制作3D游戏小地图_第3张图片


然后在Canvas_tankState_UI下创建UI组件 RawImage 并改名为了 RawImagemap,调整其大小与位置,让其位于Canvas的右下方,并调整好锚点


Unity3D之UGUI——利用Camera与RawImage组件制作3D游戏小地图_第4张图片


最后将Project下的Render Texture渲染纹理 camera_map 拖到RawImagemap组件下的Texture


Unity3D之UGUI——利用Camera与RawImage组件制作3D游戏小地图_第5张图片


拖动成功后显示如下:


Unity3D之UGUI——利用Camera与RawImage组件制作3D游戏小地图_第6张图片


ctrl+s 保存场景,点击运行,看到下图,小地图里的坦克可以动哦,简单的小地图搞定。nice nice!


Unity3D之UGUI——利用Camera与RawImage组件制作3D游戏小地图_第7张图片


是不是很简单,如果你有更好的方法,欢迎交流,互相进步!GO GO!继续成长之路!


要下载工程文件的同孩,访问另一篇博文:http://blog.csdn.net/lijianfex/article/details/78238759


你可能感兴趣的:(Unity3D,UGUI)