UI Mask的怪异行为

本·鲁宾(Ben Rubin)

我正在尝试使用蒙版创建2D UI健康栏。我有一个黑色的背景图像,一个绿色的健康栏图像(用于整个健康栏)和一个灰色的蒙版图像(用于健康栏的已耗尽部分)。黑色背景的大小约为1 x .1,绿色和灰色部分稍小,因此在健康栏的边缘附近可以看到一小部分黑色背景。

将健康栏添加到场景中时,我只会看到黑色背景。如果我关闭Mask脚本,绿色部分将显示出来。最奇怪的是,如果我将绿色部分的宽度增加到一个较大的数字(如50),那么整个条形就会变为绿色(黑色细边框除外)。然后,如果我更改,Fill Amount则条形图将从0.51保持为满,从0到0.49则为空。Fill Amount在0.49和0.51之间移动会收缩并扩展条的绿色部分。

是健康栏的层次结构。

是检查器中的状态栏画布。Render ModeWorld Space我不知道这是否与此问题有关。我有一个自己的脚本,称为Status Bar Canvas Script附件,但是我注释掉了所有代码。

是检查器中状态栏的背景(黑色边框)。

是检查器中的遮罩(未填充的灰色条)。

是检查器中的绿色条。

就是结果的样子。

是结果看起来像什么,如果我取消了Mask脚本。

看来问题似乎与Unity如何缩放场景中的“内容”对象有关,但我无法弄清楚它的实际作用。

苏拉夫·保罗·罗曼(Sourav Paul Roman)

蒙版支架和FillAmount预制件都必须包含UI Image组件和Sprite。MaskHolder将具有蒙版精灵,Content并具有健康栏精灵。MaskHolder还将包含一个Mask组件Show Mask Graphics并被选中。您的层次结构设置应如下所示:

在此处输入图片说明

并且不应仅将画布用作健康栏。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章