15#include "../Material.h"
16#include "../../../Renderer/Primitives/2D/Shape.h"
Combines two materials using a shape as a mask.
Material * materialOuter
The material rendered outside the mask shape.
Shape * shape
Defines the masked area for blending the materials.
void SetOpacity(float opacity)
Sets the opacity of the mask effect.
float opacity
Controls the opacity of the mask effect.
Material * materialShape
The material rendered inside the mask shape.
RGBColor GetRGB(const Vector3D &position, const Vector3D &normal, const Vector3D &uvw) override
Retrieves the color at a specific position based on the mask.
float * GetOpacityReference()
Provides a reference to the opacity value.
Abstract base class for rendering materials.
Represents an RGB color and provides methods for manipulation.
Abstract base class for 2D geometric shapes.
Represents a 3D vector (X, Y, Z) and provides methods for vector arithmetic.