Unity:世界空间UI(人物头顶显示UI:血条、名字、伤害值...)
官方教程:https://docs.unity3d.com/2017.2/Documentation/Manual/HOWTO-UIWorldSpace.html
第一步:Set the Canvas to World Space
创建一个Canvas,渲染模式选择World Space
第二步:Decide on a resolution
设置Canvas大小,越大显示的越清晰,位置最好重置为(0,0,0)
第三步:Specify the size of the Canvas in the world
根据公式 meter_size / canvas_width 控制像素大小或者缩放
第四步:Position the Canvas
主UI Canvas和世界空间UI Canvas都放置在原点时,操作界面如下显示:
让UI一直显示在人物头上固定位置(这里height应该比人物身高还要高一点,可以把角色身高写进配置表,从配置表里读身高信息)
第二句是让UI保持平面角度,让UI朝向摄像机前方(这个摄像机是跟随人物的摄像机)
this.transform.position = owner.position + Vector3.up * height; this.transform.forward = Camera.main.transform.forward;