Back to API Reference
Class

ExtrudeModifier

Adds a 3D extrude/bevel effect by appending a stack of progressively offset duplicate quads behind the face, shaded across a near→far colour gradient.

Remarks

Layers are flushed back-to-front in layer-major order across all glyphs (every glyph's deepest slice first, then every glyph's next-deeper slice, …, then face). Naïve per-glyph fanout would invert that order at glyph boundaries when the cumulative offset exceeds glyph advance, leaving farther slices of glyph N+1 covering closer slices of glyph N. Per-layer buffers preserve the painter order regardless of overlap. Parameter: offset ("x y") + [,#nearColor][,#farColor][,dilate][,softness]. Defaults: offset = (0.3, -0.3) in em (scaled by the glyph metric factor; with FixedPixelSize the values are fixed pixels instead), near = white, far = black, dilate = 0, softness = 0.
public bool RendersBehindFill{ get }
protected override void OnEnable()
protected override void OnDestroy()
protected override void ResetOwnRequests()
protected override void BeforeApply()
protected override void OnApply()
protected override void OnGlyphEffect()
protected override void OnFlush()

Layer-major flush: every glyph's deepest slice first, then every glyph's next slice, …, then the face. Each layer maintains its own emit buffer, so painter order survives inter-glyph overlap when the cumulative extrusion offset exceeds glyph advance. All slices record the sequence captured for their glyph; the generator's stable sort then keeps the deepest-first emission order within the layer.

protected override void OnEmitQuad()

Not used — ExtrudeModifier bypasses the base emit-queue indirection and writes all per-layer slots directly inside its OnFlush override.