Version: 2023.1
LanguageEnglish
  • C#

UsageHints.MaskContainer

Suggest a change

Success!

Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.

Close

Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.

Close

Cancel

Description

Marks a VisualElement that hosts non-rectangular descendants using the "overflow: hidden;" style. Non-rectangular masks are implemented with the stencil. If applicable, the renderer breaks the batch to preemptively set the stencil state, before and after drawing the descendants, so that the descendants won't have to set them at the next masking level. When using this flag, consecutive stencil push/pop operations are cheap and don't require modifying the stencil reference. As a result, the batch doesn't need to be broken for each push/pop operation. Consecutive push/push or pop/pop operations are still expensive. Avoid cases that involve many subtrees, where each subtree uses 2 or more levels of masking, to avoid consecutive push/push or pop/pop operations.

This flag is implicitly set on the root VisualElement, making single-level masks non-batch-breaking by default.