码迷,mamicode.com
首页 > 编程语言 > 详细

如何用Unity GUI制作HUD

时间:2015-03-20 01:19:11      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:

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

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/

如何用Unity GUI制作HUD

标签:

原文地址:http://www.cnblogs.com/crazylights/p/4352271.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!