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

HUD是指平视显示器,就是套在脸上,和你的眼睛固定在一起,HUD的意思就是界面咯,一般我们说HUD特指把3D空间中的界面的某些信息(比如血条,伤害之类)的贴在界面上,对应3D空间投影到屏幕空间的位置。

 

很简单很简单的一件事,就是投影而已。

虽然我一直认为自己学的是野路子,相当的空中楼阁。不幸发现,比我路子更野,比我基础更差的同学实在是多到令人发指的程度。

 

没办法,我们用UGUI来实现一下这个投影过程。

弄几个盒子让他们转起来。

如何用Unity GUI制作HUD如何用Unity GUI制作HUD

如果连这个都不知道怎么弄得同学我劝你还是关了这页吧,如果真的不会,还是愿意继续往下看,就看看下面三张图。

如何用Unity GUI制作HUD如何用Unity GUI制作HUD

如何用Unity GUI制作HUD

然后,弄个UGUI的简单界面

弄三个Image,区别开来

如何用Unity GUI制作HUD

如何用Unity GUI制作HUD

然后Canvas 要放在ScreenSpace,因为我们要映射到屏幕空间,这样只需要一次映射就搞定了。

如何用Unity GUI制作HUD

我喜欢让他按屏幕高度缩放,这个不影响定位,看你需求。

让Image按照Cube的位置显示

就是这么简单,一次映射,问题解决

如何用Unity GUI制作HUD

如何用Unity GUI制作HUD

如何用Unity GUI制作HUD

 

排序的问题

还有最后一个问题,HUD是GUI,GUI是按GUI的规矩排序的,但是3D物体是按深度排序的。

需要把HUD的排序规则也要做个映射,

如何用Unity GUI制作HUD

我们给Canvas加一个SortHud的脚本就解决了

如何用Unity GUI制作HUD

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

 

付SVN地址

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

相关文章:

  • 2021-06-10
  • 2021-12-07
  • 2021-08-28
  • 2021-09-15
  • 2021-09-28
  • 2021-07-18
  • 2022-12-23
  • 2021-10-19
猜你喜欢
  • 2022-12-23
  • 2022-12-23
  • 2021-12-04
  • 2021-08-15
  • 2022-01-06
  • 2021-04-30
  • 2022-12-23
相关资源
相似解决方案