[Unity] 在Unity中實現(xiàn)小地圖(Minimap)

小地圖的基本概念


眾所周知世蔗,小地圖(或雷達)是用于顯示周圍環(huán)境信息的萧锉。首先珊随,小地圖是以主角為中心的。其次柿隙,小地圖上應該用圖標來代替真實的人物模型叶洞,因為小地圖通常很小,玩家可能無法看清真實的模型禀崖。

大多數(shù)小地圖都是圓形的衩辟,所以本文也將創(chuàng)建圓形小地圖。通常小地圖周圍還會有一些按鈕和標簽波附,本文也會介紹艺晴。

創(chuàng)建場景

新建場景,導入Unity Chan模型作為玩家掸屡,導入兩個機器人作為敵人封寞。


游戲視圖

添加一個新的相機。依次點擊菜單項GameObject?-> Camera新建相機并命名為Minimap Camera仅财。然后將該相機設為Unity Chan的子對象狈究,并將其坐標設為Unity Chan上方10個單位,把相機對準Unity Chan模型盏求。


設置Minimap Camera

為了達到更好的效果抖锥,將position設為(0, 10, 0),rotation設為(90, 0, 0)∷榉#現(xiàn)在相機顯示效果如下:


但這還不是小地圖“醴希現(xiàn)在運行場景,你可以看到只有上圖中的內(nèi)容顯示出來魂莫。我們必須把小地圖做成一個UI元素还蹲。

渲染到UI層

這里需要用到Render Texture來實現(xiàn)。依次點擊菜單項Assets -> Create -> Render Texture新建Render Texture并命名為Minimap Render Texture耙考。


選中Minimap Camera后在檢視面板將Target Texture字段設為Minimap Render Texture。


現(xiàn)在運行場景會發(fā)現(xiàn)Minimap Camera中的內(nèi)容不見了潭兽,這是因為它被顯示到了新建的Render Texture中倦始。

下面新建Canvas來添加UI元素。依次點擊菜單項GameObject -> UI -> Canvas來新建Canvas山卦。


這里需要使用Raw Image在Canvas中顯示Render Texture的內(nèi)容鞋邑。依次點擊菜單項GameObject -> UI -> Raw Image新建Raw Image诵次,然后命名為Minimap Image,在檢視面板中將Texture字段設為Minimap Render Texture枚碗。


現(xiàn)在Minimap Camera相機中的內(nèi)容可以作為UI來顯示了逾一!


下面將小地圖變?yōu)閳A形。這里需要用到一張簡單的遮罩紋理:


新建Image并為其添加Mask組件肮雨,將Image的Source Image字段設為上面的遮罩圖片遵堵,并將Minimap Image設為Mask的子對象。

注意:為了達到更好的視覺效果怨规,記得禁用遮罩紋理的Mipmap陌宿。


現(xiàn)在小地圖顯示效果如下:


小地圖的白色背景看起來不太美觀,給它加一個邊框:



為了讓整個小地圖移動起來更方便波丰,新建一個空的GameObject命名為Minimap壳坪,并將所有對象設為Minimap子對象。


最后將小地圖移至屏幕右上角掰烟。


效果不錯吧爽蝴?但這還不是真正意義上的小地圖,只是相機從頂部取景的圖像而已纫骑。接下來通過Layer來做一些設置霜瘪!

設置Layer

這里需要新建一個Layer。依次點擊菜單項Edit -> Project Settings -> Tags and Layers新建Layer命名為Minimap惧磺。


然后新建三個球體颖对。一個設為藍色代表Unity Chan。將該球體設為Unity Chan的子對象磨隘,并將其Layer設為Minimap缤底。


對兩個機器人進行同樣的操作,將球體改為紅色番捂。


現(xiàn)在最關鍵的一步來了个唧!選中Main Camera并確保其Culling Mask中不包括Minimap這一層。


然后選中Minimap Camera讓其Culling Mask只包括Minimap這一層设预。


現(xiàn)在這個小地圖看起來就比較完善了徙歼!


最后步驟

還可以做一些調(diào)整。首先將Minimap Camera的Clear Flags設為Solid Color并將其顏色改為淺灰色鳖枕,以便讓小地圖背景與小球的對比度更強魄梯。


還可以添加一些UI元素來操作小地圖。這里使用標簽作為示例宾符,最后結(jié)果如下:


當角色或機器人移動時酿秸,小地圖上的小球也會即時更新位置。


到此整個制作小地圖的教程就結(jié)束了魏烫,如有任何問題辣苏,歡迎來下方評論區(qū)留言肝箱!

本文來源于:http://blog.theknightsofunity.com ? 作者:Piotr Korzuszek

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市稀蟋,隨后出現(xiàn)的幾起案子煌张,更是在濱河造成了極大的恐慌,老刑警劉巖退客,帶你破解...
    沈念sama閱讀 212,686評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件骏融,死亡現(xiàn)場離奇詭異,居然都是意外死亡井辜,警方通過查閱死者的電腦和手機绎谦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,668評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來粥脚,“玉大人窃肠,你說我怎么就攤上這事∷⒃剩” “怎么了冤留?”我有些...
    開封第一講書人閱讀 158,160評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長树灶。 經(jīng)常有香客問我纤怒,道長,這世上最難降的妖魔是什么天通? 我笑而不...
    開封第一講書人閱讀 56,736評論 1 284
  • 正文 為了忘掉前任泊窘,我火速辦了婚禮,結(jié)果婚禮上像寒,老公的妹妹穿的比我還像新娘烘豹。我一直安慰自己,他們只是感情好诺祸,可當我...
    茶點故事閱讀 65,847評論 6 386
  • 文/花漫 我一把揭開白布携悯。 她就那樣靜靜地躺著,像睡著了一般筷笨。 火紅的嫁衣襯著肌膚如雪憔鬼。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 50,043評論 1 291
  • 那天胃夏,我揣著相機與錄音轴或,去河邊找鬼。 笑死构订,一個胖子當著我的面吹牛侮叮,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播悼瘾,決...
    沈念sama閱讀 39,129評論 3 410
  • 文/蒼蘭香墨 我猛地睜開眼囊榜,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了亥宿?” 一聲冷哼從身側(cè)響起卸勺,我...
    開封第一講書人閱讀 37,872評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎烫扼,沒想到半個月后曙求,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,318評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡映企,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,645評論 2 327
  • 正文 我和宋清朗相戀三年悟狱,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片堰氓。...
    茶點故事閱讀 38,777評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡挤渐,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出双絮,到底是詐尸還是另有隱情浴麻,我是刑警寧澤,帶...
    沈念sama閱讀 34,470評論 4 333
  • 正文 年R本政府宣布囤攀,位于F島的核電站软免,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏焚挠。R本人自食惡果不足惜膏萧,卻給世界環(huán)境...
    茶點故事閱讀 40,126評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望蝌衔。 院中可真熱鬧榛泛,春花似錦、人聲如沸胚委。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,861評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽亩冬。三九已至艘希,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間硅急,已是汗流浹背覆享。 一陣腳步聲響...
    開封第一講書人閱讀 32,095評論 1 267
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留营袜,地道東北人撒顿。 一個月前我還...
    沈念sama閱讀 46,589評論 2 362
  • 正文 我出身青樓,卻偏偏與公主長得像荚板,于是被迫代替她去往敵國和親凤壁。 傳聞我的和親對象是個殘疾皇子吩屹,可洞房花燭夜當晚...
    茶點故事閱讀 43,687評論 2 351

推薦閱讀更多精彩內(nèi)容