如何用Unity GUI制作HUD


若知其所以然,自然知其然。

HUD是指平視顯示器,就是套在臉上,和你的眼睛固定在一起,HUD的意思就是界面咯,一般我們說HUD特指把3D空間中的界面的某些信息(比如血條,傷害之類)的貼在界面上,對應3D空間投影到屏幕空間的位置。

 

很簡單很簡單的一件事,就是投影而已。

雖然我一直認為自己學的是野路子,相當的空中樓閣。不幸發現,比我路子更野,比我基礎更差的同學實在是多到令人發指的程度。

 

沒辦法,我們用UGUI來實現一下這個投影過程。

首先准備一下我們的3D空間

弄幾個盒子讓他們轉起來。

如果連這個都不知道怎么弄得同學我勸你還是關了這頁吧,如果真的不會,還是願意繼續往下看,就看看下面三張圖。

然后,弄個UGUI的簡單界面

弄三個Image,區別開來

然后Canvas 要放在ScreenSpace,因為我們要映射到屏幕空間,這樣只需要一次映射就搞定了。

我喜歡讓他按屏幕高度縮放,這個不影響定位,看你需求。

讓Image按照Cube的位置顯示

就是這么簡單,一次映射,問題解決

 

排序的問題

還有最后一個問題,HUD是GUI,GUI是按GUI的規矩排序的,但是3D物體是按深度排序的。

需要把HUD的排序規則也要做個映射,

我們給Canvas加一個SortHud的腳本就解決了

按照深度的規矩重新排下序就好了

 

付SVN地址

http://code.taobao.org/svn/fightbeta/trunk/uGUISample/


免責聲明!

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



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