The MaskRenderer component renders filled shapes like rectangles, circles, or polygons.
It supports different shape types with configurable dimensions, colors, positioning and rotation.
Shapes can be rendered with variable opacity and assigned to specific render layers.
This component is useful for creating UI elements, visual effects, or masking other rendered content.

const maskRenderer = new MaskRenderer({
shape: MaskShape.Rectangle,
width: 32,
height: 32,
color: "#000000",
offset: new Vector2(0, 0),
rotation: 0,
opacity: 1,
layer: "Default"
});
const maskRenderer = new MaskRenderer({
shape: MaskShape.Circumference,
radius: 16,
color: "#000000",
offset: new Vector2(0, 0),
opacity: 1,
layer: "Default"
});
const maskRenderer = new MaskRenderer({
shape: MaskShape.Polygon,
vertexModel: [new Vector2(0, 0), new Vector2(32, 0), new Vector2(32, 32), new Vector2(0, 32)],
color: "#000000",
offset: new Vector2(0, 0),
opacity: 1,
layer: "Default"
});

Constructors

Properties

color: string

The color of the mask

height: number = 0

Mask height in pixels (only for rectangle)

layer: string = defaultRenderLayer

The render layer

offset: Vector2 = ...

X-axis and Y-axis offset

opacity: number = 1

Change the opacity between 1 and 0

radius: number = 0

Mask radius in pixels (only for circumference)

rotation: number = 0

Mask rotation in radians

shape: MaskShape

Mask shape: Rectangle, Circumference or Polygon

vertexModel: Vector2[] = []

Polygon vertices (only for polygon)

width: number = 0

Mask width in pixels (only for rectangle)