Skip to content

CodeEffectBase

ClassTextStudio.BuiltInsTextStudio
public abstract class CodeEffectBase : ITextStudioEffect, ITextStudioBuiltIn, ITextStudioEffectFactory, ITextStudioEffectDefinition, ITextStudioEffectMetadataProvider, ITextStudioEffectCapabilitiesProvider

Base class for stateless code-defined effects. All parameters are fields with sensible defaults. These never reference UnityEngine.Object subclasses so they are safe to construct at static init.

protected virtual TextStudioEffectMetadata CreateMetadata()

Creates cached authoring metadata for this code-defined effect.

Returns

TextStudio.TextStudioEffectMetadata

Evaluate(ref EvaluatedGlyphState, in EffectEvaluationContext)

Section titled “Evaluate(ref EvaluatedGlyphState, in EffectEvaluationContext)”
public abstract void Evaluate(ref EvaluatedGlyphState state, in EffectEvaluationContext context)

Evaluate the effect for a single glyph.

Parameters

Name Type Description
state TextStudio.EvaluatedGlyphState Current glyph state (read/write).
context TextStudio.EffectEvaluationContext Evaluation context with timing, index, and effect area data.
public virtual ITextStudioEffect CreateEffect(in TextStudioTagParameters parameters)

Creates an invocation-specific evaluator from parsed tag parameters.

Parameters

Name Type Description
parameters TextStudio.TextStudioTagParameters Read-only parsed parameters for one effect occurrence.

Returns

TextStudio.ITextStudioEffect: A detached evaluator, or null when binding fails.

ApplyCustomParameters(in TextStudioTagParameters)

Section titled “ApplyCustomParameters(in TextStudioTagParameters)”
protected virtual void ApplyCustomParameters(in TextStudioTagParameters parameters)

Allows an add-on effect family to bind parameters without base-assembly type knowledge.

Parameters

Name Type
parameters TextStudio.TextStudioTagParameters

protected CodeEffectBase()

public abstract string Id { get; }

Returns

System.String

public virtual string Category { get; }

Returns

System.String

public virtual string DisplayName { get; }

Returns

System.String

public virtual string Description { get; }

Returns

System.String

public virtual TextStudioPhaseMask DefaultPhases { get; }

Returns

TextStudio.TextStudioPhaseMask

public virtual TextStudioEffectAreaSettings DefaultArea { get; }

Returns

TextStudio.TextStudioEffectAreaSettings

public virtual TextStudioEffectPlaybackRole PlaybackRole { get; }

Returns

TextStudio.TextStudioEffectPlaybackRole

public virtual TextStudioEffectPlaybackPreset DefaultPlayback { get; }

Returns

TextStudio.TextStudioEffectPlaybackPreset

public virtual TextStudioEffectCurvePreset DefaultCurve { get; }

Returns

TextStudio.TextStudioEffectCurvePreset

public virtual float DefaultPlaybackDuration { get; }

Returns

System.Single

public virtual float DefaultDelayBetweenCycles { get; }

Returns

System.Single

public virtual EffectBlendMode BlendMode { get; }

Returns

TextStudio.EffectBlendMode

public virtual TextStudioEffectCapabilities Capabilities { get; }

Gets immutable capabilities used by authoring validation and runtime compatibility checks.

Returns

TextStudio.TextStudioEffectCapabilities

public TextStudioEffectMetadata Metadata { get; }

Returns

TextStudio.TextStudioEffectMetadata