1. 程式人生 > >Unity3D之UGUI——利用Camera與RawImage元件製作3D遊戲小地圖

Unity3D之UGUI——利用Camera與RawImage元件製作3D遊戲小地圖

對於場景較大的3D場景遊戲,玩家不能夠全域性觀察自己與敵人的位置以及地圖全貌,因此製作小地圖顯示自己與敵人在地圖上的位置是必要的!

      現在我就利用一個小的Demo來製作一小地圖,我在製作中查閱了網上資料,製作了一個demo,但是由於只能顯示在我新增在Tank物體上的第一人稱的Camera的近裁面上,這樣的話,當我在運行遊戲時,控制Tank運動時,小地圖經常被場景中的物體遮擋,為了解決這個問題,我想到了利用RawImage元件,因為該元件能夠渲染動圖與視訊紋理。這樣來做還更加方便。

OK,讓我們在unity中演示製作一下,so easy!


首先在場景中建立一個新的Camera

調整其方向,使其能拍攝到整個地圖,如圖:




接著點選選單Assets----->Creat------>Render Texture 這時在Project面板會出現一個New Render Texture ,我將其改名為camera_map


然後點選我們建立的攝像機Camera_map,將剛剛建立的Render Texture渲染紋理camera_map拖動到攝像機Camera_map元件下的Target Texture處。




接著在hierarchy面板建立一個Canvas,並改名Canvas_tankState_UI,將其Render Mode

設為Screen Space -Overlay




然後在Canvas_tankState_UI下建立UI元件 RawImage 並改名為了 RawImagemap,調整其大小與位置,讓其位於Canvas的右下方,並調整好錨點




最後將Project下的Render Texture渲染紋理 camera_map 拖到RawImagemap元件下的Texture




拖動成功後顯示如下:




ctrl+s 儲存場景,點選執行,看到下圖,小地圖裡的坦克可以動哦,簡單的小地圖搞定。nice nice!




是不是很簡單,如果你有更好的方法,歡迎交流,互相進步!GO GO!繼續成長之路!


要下載工程檔案的同孩,訪問另一篇博文:http://blog.csdn.net/lijianfex/article/details/78238759