我目前正在开发2D Unity游戏。.目前,我能够实现一个代码,使相机保持最初为16:9的纵横比,并且当纵横比不同时,它将完美地添加信箱。我的问题是我有一个HUD可以被播放器隐藏,所以当我实现信箱时,HUD不能正确隐藏。.我花了很多时间试图找到答案,但我一直无法..有没有一种方法可以避免呈现/显示HUD位于信箱顶部的部分?我要附上一张图像,显示HUD的外观以及隐藏状态下的显示方式。任何帮助将不胜感激。。在此先感谢您!

普通HUD:
c# - Unity3D中是否有一种方法可以检测到游戏对象位于支柱框的顶部,以避免渲染它-LMLPHP

隐藏的HUD:
c# - Unity3D中是否有一种方法可以检测到游戏对象位于支柱框的顶部,以避免渲染它-LMLPHP

最佳答案

您可以使用RectMask2D组件来掩盖信箱区域。您要将RectMask2D附加到清单框父级的对象上。 RectMask2D的子代只会出现在其父代的区域内,因此,如果蒙版未覆盖信箱区域,则库存栏也将不会出现在信箱上方。

关于c# - Unity3D中是否有一种方法可以检测到游戏对象位于支柱框的顶部,以避免渲染它,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52193242/

10-10 21:56