您的位置:首页 > 移动开发 > Unity3D

如何用Unity GUI制作HUD

2015-03-19 23:33 253 查看
若知其所以然,自然知其然。

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/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: