Skip to content

TextStudioAnimatedLabel

ClassTextStudioTextStudio
[UxmlElement]
public class TextStudioAnimatedLabel : Label, ITextStudioContent, ITextStudioPlayback, ITextStudioVisibility

Convenience UI Toolkit label for Text Studio markup. Runtime behavior is delegated to TextStudio.TextStudioUITKBinding so version-specific support remains shared with labels augmented through extension methods.

public TextStudioAnimatedLabel()

public void SetAnimatedText(string markupText)

Replaces label markup and begins reveal according to the label’s current typewriter settings.

Parameters

Name Type
markupText System.String
public void SetText(string markupText)

Replaces the current markup and applies the change immediately.

Parameters

Name Type
markupText System.String
public void SetTextDeferred(string markupText)

Replaces pending markup without compiling it until the next automatic or host update. Repeated calls before that update compile only the newest value.

Parameters

Name Type
markupText System.String
public void AppendText(string markupText)

Appends markup and recompiles the combined content.

Parameters

Name Type
markupText System.String
public void ClearText()

Clears authored content, compiled state, and visible output.

RegisterExtensionTagProcessor(ITextStudioExtensionTagProcessor)

Section titled “RegisterExtensionTagProcessor(ITextStudioExtensionTagProcessor)”
public void RegisterExtensionTagProcessor(ITextStudioExtensionTagProcessor processor)

Registers a component-local processor for plan and reveal extension-tag callbacks.

Parameters

Name Type
processor TextStudio.ITextStudioExtensionTagProcessor

UnregisterExtensionTagProcessor(ITextStudioExtensionTagProcessor)

Section titled “UnregisterExtensionTagProcessor(ITextStudioExtensionTagProcessor)”
public void UnregisterExtensionTagProcessor(ITextStudioExtensionTagProcessor processor)

Stops dispatching extension-tag callbacks to a component-local processor.

Parameters

Name Type
processor TextStudio.ITextStudioExtensionTagProcessor
public void ShowText(string markupText)

Replaces the content and begins reveal playback using the current settings.

Parameters

Name Type
markupText System.String
public void ShowTextInstant(string markupText)

Replaces the content and displays it completely without advancing a reveal clock.

Parameters

Name Type
markupText System.String
public void StartReveal()

Starts reveal playback for the current compiled content.

public void SkipReveal()

Completes reveal immediately, including remaining reveal events.

public void StopReveal()

Stops reveal at its current visibility without completing it.

public void TriggerRemainingEvents()

Dispatches pending marker and cue events without advancing the reveal animation.

public bool AdvanceOrSkip()

Advances a paused or waiting reveal when possible; otherwise completes the active reveal.

Returns

System.Boolean: true when the call changed playback state.

public void StartDisappear()

Starts hide playback for the current content.

public void SkipDisappear()

Completes hide playback immediately.

public void StopDisappear()

Stops hide playback at its current visibility.

public float GetApproximateHideDuration()

Estimates hide duration using the current content and timing configuration.

Returns

System.Single: Approximate duration in seconds.

public void SetRevealSpeed(float multiplier)

Changes the playback-rate multiplier used by subsequent reveal updates.

Parameters

Name Type Description
multiplier System.Single Non-negative speed multiplier, where 1 uses authored timing.
public void PauseReveal()

Pauses reveal playback while retaining its current position.

public void ResumeReveal()

Resumes reveal playback from its paused position.

public void SkipCurrentWait()

Requests cooperative cancellation of the active wait and resumes reveal. Custom non-skippable action coroutines may continue running.

public void SetRevealProgress(float progress)

Sets reveal to an explicit normalized position without changing authored content.

Parameters

Name Type Description
progress System.Single Requested progress, clamped to the 0 to 1 range.
public bool SetGlyphVisibility(int glyphIndex, bool visible, bool playTransition = true)

Overrides visibility for one visible glyph.

Parameters

Name Type Description
glyphIndex System.Int32 Zero-based visible-glyph index in the current compiled plan.
visible System.Boolean Whether the glyph should be visible.
playTransition System.Boolean Whether configured transitions should be used.

Returns

System.Boolean: false when glyphIndex is outside the current plan.

public bool SetWordVisibility(int wordIndex, bool visible, bool playTransition = true)

Overrides visibility for one semantic word.

Parameters

Name Type Description
wordIndex System.Int32 Zero-based word index in the current compiled plan.
visible System.Boolean Whether glyphs in the word should be visible.
playTransition System.Boolean Whether configured transitions should be used.

Returns

System.Boolean: false when wordIndex is outside the current plan.

public bool SetTextVisibility(bool visible, bool playTransition = true)

Overrides visibility for the complete text without modifying its markup.

Parameters

Name Type Description
visible System.Boolean Whether all glyphs should be visible.
playTransition System.Boolean Whether configured reveal or hide transitions should be used.

Returns

System.Boolean: true when the override was accepted.

public bool ClearGlyphVisibilityOverride(int glyphIndex)

Restores authored visibility for one glyph.

Parameters

Name Type Description
glyphIndex System.Int32 Zero-based visible-glyph index in the current compiled plan.

Returns

System.Boolean: true when an existing override was removed.

public bool ClearVisibilityOverrides()

Restores authored visibility for every glyph.

Returns

System.Boolean: true when at least one override was removed.

public void ConfigureEffectFamilies(bool reveal, bool active, bool hide)

Enables or disables evaluation of reveal, active, and hide effect families.

Parameters

Name Type
reveal System.Boolean
active System.Boolean
hide System.Boolean
public void RestartEffects()

Resets effect-local clocks and state while preserving text and reveal progress.

public void RefreshEffectBindings()

Re-resolves effect definitions and parameters after registry or asset changes.

public void SetRevealLoop(bool loop, float delay = 0.75)

Controls whether reveal restarts after completion and configures the delay before restarting.

Parameters

Name Type
loop System.Boolean
delay System.Single
public void UpdateFromHost(float deltaTime)

Advances a manual-update label by a non-negative number of seconds.

Parameters

Name Type
deltaTime System.Single
public void ConfigureLinearPlacement()

Selects source-linear placement without changing the current orientation policy.

ConfigureArcPlacement(float, float, float, PathSpacing, float, bool, float)

Section titled “ConfigureArcPlacement(float, float, float, PathSpacing, float, bool, float)”
public void ConfigureArcPlacement(float radius, float arcAngle, float startAngle = 0, PathSpacing spacing = PathSpacing.Even, float fill = 1, bool reverse = false, float radiusChange = 0)

Configures planar arc placement in local units and degrees without changing orientation.

Parameters

Name Type
radius System.Single
arcAngle System.Single
startAngle System.Single
spacing TextStudio.PathSpacing
fill System.Single
reverse System.Boolean
radiusChange System.Single

ConfigureWavePlacement(float, float, float, float)

Section titled “ConfigureWavePlacement(float, float, float, float)”
public void ConfigureWavePlacement(float amplitude, float frequency, float speed, float phase = 0)

Configures animated planar wave placement in local units and cycles per second.

Parameters

Name Type
amplitude System.Single
frequency System.Single
speed System.Single
phase System.Single

ConfigureCirclePlacement(float, float, PathSpacing, bool, float)

Section titled “ConfigureCirclePlacement(float, float, PathSpacing, bool, float)”
public void ConfigureCirclePlacement(float radius, float startAngle = 0, PathSpacing spacing = PathSpacing.Even, bool reverse = false, float radiusChange = 0)

Configures circular placement in local units and degrees without changing orientation.

Parameters

Name Type
radius System.Single
startAngle System.Single
spacing TextStudio.PathSpacing
reverse System.Boolean
radiusChange System.Single

ConfigureGridPlacement(int, GridCellSizing, Vector2, Vector2, GridFlow, bool, bool)

Section titled “ConfigureGridPlacement(int, GridCellSizing, Vector2, Vector2, GridFlow, bool, bool)”
public void ConfigureGridPlacement(int columns, GridCellSizing sizing = GridCellSizing.Auto, Vector2 cellSize = default, Vector2 gap = default, GridFlow flow = GridFlow.RowsFirst, bool reverse = false, bool respectSourceLines = false)

Configures row- or column-major grid placement with explicit or automatic cell sizing.

Parameters

Name Type
columns System.Int32
sizing TextStudio.GridCellSizing
cellSize UnityEngine.Vector2
gap UnityEngine.Vector2
flow TextStudio.GridFlow
reverse System.Boolean
respectSourceLines System.Boolean
public void SetArcStartAngle(float startAngle)

Changes the arc’s start angle in degrees and refreshes placement.

Parameters

Name Type
startAngle System.Single
public void SetCircleStartAngle(float startAngle)

Changes the circle’s start angle in degrees and refreshes placement.

Parameters

Name Type
startAngle System.Single

SetPlacementOrientation(TextStudioPlacementOrientation, Vector3)

Section titled “SetPlacementOrientation(TextStudioPlacementOrientation, Vector3)”
public void SetPlacementOrientation(TextStudioPlacementOrientation orientation, Vector3 fineRotation = default)

Sets glyph orientation along the selected placement plus an optional local Euler rotation in degrees.

Parameters

Name Type
orientation TextStudio.TextStudioPlacementOrientation
fineRotation UnityEngine.Vector3

public ITextStudioContent Content { get; }

Focused content view for integrations that do not control playback.

Returns

TextStudio.ITextStudioContent

public ITextStudioPlayback Playback { get; }

Focused reveal and hide playback view.

Returns

TextStudio.ITextStudioPlayback

public ITextStudioVisibility Visibility { get; }

Focused runtime visibility view.

Returns

TextStudio.ITextStudioVisibility

[UxmlAttribute("markup")]
[CreateProperty]
public string Markup { get; set; }

Gets the authored markup, including Text Studio tags.

Returns

System.String

public string Text { get; }

Gets the visible plain-text content after markup processing.

Returns

System.String

public string ResolvedText { get; }

Returns

System.String

public string DisplayText { get; }

Returns

System.String

public TextStudioPlanView Plan { get; }

Gets a transient, allocation-free view of the compiled semantic plan. Do not retain the view after the current callback or frame.

Returns

TextStudio.TextStudioPlanView

[UxmlAttribute("profile")]
[CreateProperty]
public TextStudioProfile Profile { get; set; }

Returns

TextStudio.TextStudioProfile

[UxmlAttribute("markup-syntax")]
[CreateProperty]
public TextStudioMarkupSyntax MarkupSyntaxOverride { get; set; }

Returns

TextStudio.TextStudioMarkupSyntax

public TextStudioAuthoringProfile ResolvedAuthoringProfile { get; }

Gets the effective authoring profile after label and project settings are resolved.

Returns

TextStudio.TextStudioAuthoringProfile

[UxmlAttribute("update-mode")]
[CreateProperty]
public TextStudioUITKUpdateMode UpdateMode { get; set; }

Returns

TextStudio.TextStudioUITKUpdateMode

[UxmlAttribute("play-on-attach")]
[CreateProperty]
public bool PlayOnAttach { get; set; }

Returns

System.Boolean

[UxmlAttribute("reveal-mode")]
[CreateProperty]
public RevealMode RevealMode { get; set; }

Returns

TextStudio.RevealMode

[UxmlAttribute("speed-multiplier")]
[CreateProperty]
public float SpeedMultiplier { get; set; }

Returns

System.Single

public float RevealProgress { get; }

Gets normalized reveal progress from 0 (hidden) to 1 (fully revealed).

Returns

System.Single

public int RevealedCount { get; }

Returns

System.Int32

public int RevealedGlyphCount { get; }

Gets the number of semantic glyphs currently revealed.

Returns

System.Int32

public int TotalGlyphCount { get; }

Gets the number of visible semantic glyphs in the compiled content.

Returns

System.Int32

public int WordCount { get; }

Returns

System.Int32

public bool HasVisibilityOverrides { get; }

Gets whether any runtime visibility override currently differs from authored visibility.

Returns

System.Boolean

public bool IsRevealing { get; }

Gets whether reveal playback is currently advancing.

Returns

System.Boolean

public bool IsRevealPaused { get; }

Gets whether reveal playback is paused without being stopped.

Returns

System.Boolean

public bool IsWaitingForAction { get; }

Whether reveal is paused while an action is still executing.

Returns

System.Boolean

public bool IsDisappearing { get; }

Gets whether hide playback is currently advancing.

Returns

System.Boolean

[UxmlAttribute("loop-reveal")]
[CreateProperty]
public bool LoopReveal { get; set; }

Returns

System.Boolean

public float LoopRevealDelay { get; set; }

Returns

System.Single

public float RevealAppearanceDuration { get; set; }

Returns

System.Single

public float RevealDisappearanceDuration { get; set; }

Returns

System.Single

public bool RevealEffectsEnabled { get; set; }

Returns

System.Boolean

public bool ActiveEffectsEnabled { get; set; }

Returns

System.Boolean

public bool HideEffectsEnabled { get; set; }

Returns

System.Boolean

public TypingTimingsBase Timings { get; set; }

Returns

TextStudio.TypingTimingsBase

public RevealTimingsPreset BuiltInTimingsPreset { get; set; }

Returns

TextStudio.RevealTimingsPreset

public bool WaitAfterFinalReveal { get; set; }

Returns

System.Boolean

public bool EnableInEditMode { get; set; }

Returns

System.Boolean

public TextStudioUITKFeatureSet FeatureSet { get; }

Returns

TextStudio.TextStudioUITKFeatureSet

public TextStudioUITKTextGeneratorPreference TextGeneratorPreference { get; set; }

Returns

TextStudio.TextStudioUITKTextGeneratorPreference

public PlacementMode PlacementMode { get; }

Returns

TextStudio.PlacementMode

public float ArcStartAngle { get; }

Returns

System.Single

public float CircleStartAngle { get; }

Returns

System.Single

public int GridColumns { get; }

Returns

System.Int32

public GridCellSizing GridCellSizing { get; }

Returns

TextStudio.GridCellSizing

public Vector2 GridCellSize { get; }

Returns

UnityEngine.Vector2

public Vector2 GridGap { get; }

Returns

UnityEngine.Vector2

public GridFlow GridFlow { get; }

Returns

TextStudio.GridFlow

public event Action<string> OnTextSet

Occurs after markup is replaced and accepted by the runtime.

Returns

System.Action{System.String}

public event Action<int, char> OnGlyphRevealed

Occurs when a visible glyph crosses its reveal boundary.

Returns

System.Action{System.Int32,System.Char}

public event Action OnTypewriterStarted

Occurs when reveal playback starts or restarts.

Returns

System.Action

public event Action<int, string> OnTextUnitRevealed

Occurs when a semantic text unit becomes visible.

Returns

System.Action{System.Int32,System.String}

public event Action<string, string[]> OnMarkerReached

Occurs when reveal reaches an authored marker.

Returns

System.Action{System.String,System.String[]}

public event Action<TextStudioPlanView> OnExtensionTagsChanged

Occurs after compilation changes the set of extension tags.

Returns

System.Action{TextStudio.TextStudioPlanView}

public event Action<TextStudioExtensionTag> OnExtensionTagReached

Occurs when reveal reaches an extension tag configured for reveal dispatch.

Returns

System.Action{TextStudio.TextStudioExtensionTag}

public event Action OnShowComplete

Occurs after the final reveal delay has completed and the text is fully shown.

Returns

System.Action

public event Action OnDisappearComplete

Occurs after hide playback has made the complete text invisible.

Returns

System.Action