【发布时间】:2020-05-10 23:16:03
【问题描述】:
我想将我的生命值条和法力条附加到玩家身上,但我不知道如何将它附加到玩家 winhout 镜像(当玩家模型翻转时,整个画布每次都会翻转)。
这是视频:https://youtu.be/p9UvsMXUmLU
这里是项目:https://mega.nz/file/zUY0HYbL#ahwM_uGlp7-5iMLFjR1uaj6hgeVpjyhB3SCLe9xAt88
【问题讨论】:
我想将我的生命值条和法力条附加到玩家身上,但我不知道如何将它附加到玩家 winhout 镜像(当玩家模型翻转时,整个画布每次都会翻转)。
这是视频:https://youtu.be/p9UvsMXUmLU
这里是项目:https://mega.nz/file/zUY0HYbL#ahwM_uGlp7-5iMLFjR1uaj6hgeVpjyhB3SCLe9xAt88
【问题讨论】:
在您的 CharacterController2D 中有 Flip() 方法可以翻转 transform.localScale.x 符号。看看这个变换是什么。在您的情况下,您的条形图是您翻转的根对象的子对象。所以它翻转 character_nomove.transform.x 以及它的所有孩子。您可能不想将这些条及其画布放在您的角色变换之下。我也看不出他们有任何理由进入世界空间。我猜屏幕空间覆盖在这里就足够了。
【讨论】:
你可以做的是取消父栏,然后使用类似的东西:
healthbar.transform.position = yourCharacter.transfomr.position + new vector2(0 , 1);
在Update 方法中将其沿角色移动并略高于。
请注意,如果您的角色是 2D 精灵并且条形图在 Canvas 中,则您必须使用以下内容:
healthbar.transform.position = Camera.Main.WorldToScreenPoint(yourCharacter.transfomr.position + new vector2(0 , 1));
从您放置在世界中的角色获取屏幕位置(对于 Canvas)。
【讨论】: