Performs an arbitrary shape masking of the filtered Object.
See also:
Constructor
@:value({ smoothAlpha : false, maskVisible : false })new(mask:Object, maskVisible:Bool = false, smoothAlpha:Bool = false)
Create new Mask filter.
Parameters:
mask | An Object that will be used for masking. See AbstractMask.mask for limitations. |
---|
maskVisible | When enabled, masking Object will be visible. Hidden otherwise. |
---|
smoothAlpha | Enables masking Object alpha merging. Otherwise causes unsmoothed masking of non-zero alpha areas. |
---|
Variables
Enables masking Object alpha merging. Otherwise causes unsmoothed masking of non-zero alpha areas.
Methods
Inherited Variables
The Object contents of which serve as a mask to the filtered Object.
Masking Objects have following limitations:
It cannot be a parent of the filtered Object.
It should not contain any filters.
It should be present in the object tree and precede the Object it masks in the rendering order (rendered before it).
Same masking Object cannot be used by multiple mask filters.
When enabled, masking Object will be visible to the user. Hidden otherwise. ( default : false )
@:value(true)autoBounds:Bool = true
When enabled, rendering bounds of the filter will be expanded by Filter.boundsExtend
in all directions.
Otherwise filter should provide custom bounds through Filter.getBounds
call.
Default : true.
Rendering texture boundaries extent. Increases the rendering area by twice the Filter.boundsExtend
value.
Automatically applied to object bounds when autoBounds = true
or Filter.getBounds
is not overridden.
Does not affect boundaries when autoBounds = true
and boundsExtend
is less than 0.
@:value(true)@:isVarenable:Bool = true
When filter is disabled, attached object will render as usual.
@:value(false)smooth:Bool = false
When enabled, filters on not Object which are not Drawable will use bilinear filtering when displayed
and some filter will also use bilinear filtering on intermediate textures.
@:value(defaultUseScreenResolution)useScreenResolution:Bool = defaultUseScreenResolution
Use the screen resolution to upscale/downscale the filter rendering resolution.
Stacks with additional scaling from Filter.resolutionScale
if enabled.
Inherited Methods
Method should populate bounds
with rendering boundaries of the Filter for Object s
.
Initial bounds
contents are undefined and it's recommended to either clear them or call s.getBounds(s, bounds)
.
Only used when Filter.autoBounds
is false
.
By default uses given Object bounds and extends them with Filter.boundsExtend
.
Compared to autoBounds = true
, negative boundsExtend
are still applied, causing rendering area to shrink.
Parameters:
s | The Object instance to which the filter is applied. |
---|
bounds | The Bounds instance which should be populated by the filter boundaries. |
---|
scale | Contains the desired rendering resolution scaling which should be accounted when constructing the bounds.
Can be edited to override provided scale values. |
---|