Unity3d自学记录 UGUI 3D游戏血条跟随

首先,贴上雨松大大链接(学到了就是我的,哇咔咔(原谅我的病态)):http://www.xuanyusong.com/archives/2644

其次,说下我的感受:

扎心呀,感觉自己被掏空:

Unity3d自学记录 UGUI 3D游戏血条跟随_第1张图片

如果canvas的RenderMode如上图的话,那么直接就可以将敌人的位置赋给血条,但是会发现,当敌人移出视角后,血条依旧会存在(那么坚强),然后通过2D视角去看,会发现刚刚好,哦!瞬间明白了,原来这个设置适合做2D血条。

那么,3D血条怎么做呢?想了一会,先把RenderMode调成WorldSpace,然后无非就是用camera将其世界坐标转换成摄像机的屏幕坐标,但是呀,我又犯了一个致命的错误(采用一豆到底),忽略了主摄像机,我的UICamera是用来渲染Ui的,所以,应该用主摄像机将其世界坐标转换成屏幕坐标,再用UICamera将其转换成世界坐标,那么我的血条就可以自由移动了0.0(好厉害)

雨松大大根据其(敌人哦)距离摄像机的距离来决定血条的缩放系数(一波操作666)。

血条的制作就到此就结束啦。continue。。。

-------------------------------------------------------分割线----------------------------------------------------------

额,突然又试了下,发现如果不是先主摄像机转换下坐标系的话,都会出现RenderMode==ScreenSpace的效果,额,有点晕,不过先记下这个坑,先记住要实现UI跟随3D世界物体的话,需要主摄像机进行转换,然后UI摄像机再转换回去,就完事了。(如果有大佬路过,可一定要留下答案呀(懵懵懂懂.jpg)(努力思考中。。。fighting))

你可能感兴趣的:(Unity3d)