Unity3d中使用攝像機制作實時顯示小地圖


Unity3d中使用攝像機制作實時顯示小地圖,以之前的tank為例。開始制作之前場景中物體如圖。

開始制作,步驟1:新建一個camera及一個plane。對齊位置,將camera改名為camera_UI。旋轉plane,使之在camera_UI中顯示為豎直狀態。效果如下圖:

其中,camera_UI及plane設置如圖。position位置,在tank前方並在視野范圍內能看到即可。

步驟2:為場景中物體添加Layer,以保證后面步驟中的camera正確顯示。

分別為terrain及UI。分別選中terrain及UI,調整inspector窗口的Layer,設置terrain的Layer為terrain,plane的Layer為UI。

此時場景中有兩個camera,game窗口中的顯示會出現混亂。那么此時需要調整camera的Culling Mask。

步驟3:調整camera的Culling Mask。

將tank下面的camera的Culling Mask屬性更改,此時為選中everything狀態,點擊UI選項,使其不選中UI。

設置camera_UI的Culling Mask只選中UI,同時,將camera_UI的Clear Flags改為Don‘t Clear。

此時,即可正確顯示出地形、坦克及plane。plane將用作實時顯示地圖。

步驟4:再新建一個camera,改名為camera_map,此camera將用作顯示地圖的camera。選中camera_map,在inspector中找到Target Texture,此時為空。

在project界面新建一個Render Texture,出現一個New Render Texture。

將New Render Texture賦給camera_map的Target Texture,此時camera_map所照攝到的范圍即New Render Texture的顯示。

步驟5:回到plane,為plane添加一個material,Shader類型為Self—Illumin/VertexLit(即自發光),選擇Base,為Base賦上New Render Texture。

此時,game窗口中顯示如圖:

此時已完成的差不多了,但是發現右上角的小地圖是倒的,對camera_map調節,旋轉使小地圖變成正的。若在運行過程中,小地圖會被樹擋住,則選中Camera_UI調節inspector面板中Camera下的Clipping Planes的Near屬性即可。

至此,小地圖實時顯示制作完成。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM