在Unity 2017中,我通过创建继承自
复现步骤如下:
UnityEngine.UI.Graphic
的UI行为来绘制矢量图形。但是,我的代码并不重要,因为您可以使用文档中的SimpleImage示例同样很好地观察到这个问题。问题在于,这些自定义UI行为派生自Graphic,却不能被Mask组件遮罩,尽管每个本地UI元素都可以。这非常奇怪,因为根据Graphic.OnPopulateMesh
文档,Text
、Image
和RawImage
都使用了这个方法。复现步骤如下:
- 创建一个UI画布。
- 创建一个名为“Mask”的UI Image作为UI Canvas的子对象。
- 将Mask组件添加到Mask游戏对象。
- 添加一个Image和一个SimpleImage作为Mask的子对象。
- 观察到Image被遮罩,而SimpleImage没有被遮罩。