[Unity Doc](https://docs.unity3d.com/2021.3/Documentation/Manual/script-Mask.html)
![[Снимок экрана 2023-05-06 в 08.08.51.png]]
Ограничивает видимость дочерних UI-gameobject’ов, которые выходят за границу родительского UI-gameobject. Компонент «вешается» на родителя.
### RectMask2D чем отличается от Mask?
Ниже ответ от GPT-4, однако есть ответ и в [док. Unity](https://docs.unity3d.com/Packages/
[email protected]/manual/script-RectMask2D.html)
RectMask2D и Mask оба являются компонентами маскирования в Unity, но они имеют разные особенности и используются для разных целей.
RectMask2D:
1. RectMask2D используется для маскирования только прямоугольной области и не поддерживает другие формы.
2. Он работает только с элементами UI находящимися на одной плоскости (то есть с одинаковым значением Z).
3. RectMask2D не требует наличия компонента Image и работает напрямую с RectTransform объекта.
4. RectMask2D более производителен по сравнению с Mask, так как он использует простые прямоугольные области маскирования и не требует использования графических материалов.
Mask:
1. Mask позволяет маскировать содержимое на основе формы и альфа-канала компонента Image, что позволяет создавать маски различных форм и сложности.
2. Mask может работать с любыми элементами UI независимо от их положения Z.
3. Mask требует наличия компонента Image на том же объекте и использует его альфа-канал для определения области маскирования.
4. Mask может быть менее производителен по сравнению с RectMask2D, так как он использует графические материалы для определения области маскирования и может потребовать больше вычислительных ресурсов.
В зависимости от требований к проекту, вы можете выбрать RectMask2D или Mask. Если вам нужна простая прямоугольная маска и важна производительность, RectMask2D может быть лучшим выбором. Если вам нужны более сложные формы масок или важна гибкость в работе с элементами пользовательского интерфейса, то Mask может быть более подходящим решением.