Unity的UI遮罩在Galaxy Note和Kindle Fire上无法工作

5
我正在使用Unity 5.2.2f1开发一款游戏,使用画布和图像遮罩元素,然后构建一个适用于Android的.apk。在大多数Android设备上,这个方法都可以正常工作,但在Galaxy Note 5和Kindle Fire HD上,遮罩不起作用。有趣的是,当我使用unity_builtin_extra资源中提供的默认资产时,它在Galaxy Note和Kindle Fire HD上确实有效,但当我使用.gif或.png的图像资产时,则无效。 遮罩可在所有Android设备上运行:

This works on everything

This works on everything

遮罩层仅适用于部分安卓设备:

Does not work on Note 5

Does not work on Note 5

我也尝试过更新各种设置,例如将摄像机设置为正向渲染并启用32位显示缓冲区(如其他帖子所建议的),但到目前为止都没有起作用。
非常感谢您提供任何线索或想法!

你能展示一下未工作的遮罩对象在检查器中的矩形变换设置吗? - Jerry Switalski
还有,“the masking doesn't take”是什么意思?你是想说遮罩根本没有起作用,还是子UI元素根本没有显示出来,或者其他一些奇怪的问题? - Jerry Switalski
1个回答

1
过去,我在Linux上遇到了与UI Mask类似的问题,在报告中提到了这个问题。由于他们没有修复它,所以如果其他设备也有同样的问题,我不会感到惊讶。
如果Mask的目的是用于UI,则可以使用 2D Rect Mask,它更加高效,但仅适用于UI并具有某些限制。
正如您在文档中所读到的:
矩形遮罩控件的限制为: - 它仅适用于2D空间 - 它将无法正确遮罩非共面元素
矩形遮罩的优点为: - 它不使用模板缓冲区 - 没有额外的绘制调用 - 没有材料变化 - 性能快速
无论如何,我建议您用一个小的测试项目报告问题,这样他们就可以测试并最终编写修复程序。同时,希望2DRectMask可以成为一个解决方法!

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接