Bake Parameter Configuration
Configurable bake pipeline parameters are distributed across three levels: per-glyph FGlyphScheduleInfo, per-layer UGlyphAnimationLayer, and the aggregating factory UGlyphAnimationFactory. Global settings are exposed through UTexturgeSettings.
NOTE
Texturge has no
FTexturgeBakeConfigstruct orUTexturgeConfigdata asset. All configuration is implemented through the classes and methods above.
Glyph Schedule Info
FGlyphScheduleInfo controls each glyph’s timing and behavior in the animation (6 fields system-prefilled + 2 fields set by the designer):
| Parameter | Type | Access | Description |
|---|---|---|---|
GlyphIndex / GlyphString | int32 / FString | read-only | glyph index and string (system-prefilled) |
bIsWhitespace / bIsPunctuation / bIsCJK / bIsDecorator | bool | read-only | glyph classification (system-prefilled) |
StartDelay | float | read/write | animation start delay (seconds) |
bSkipAnimation | bool | read/write | skip this glyph’s animation |
Batch configuration through the UGlyphAnimationLayer scheduling API (Index = -1 applies to all):
Layer->SetStartDelayAt(-1, 0.0f); // base start delay
Layer->SetDelayAt(-1, 0.05f); // per-glyph stagger (glyph i = 0 + i × 0.05)
Layer->SkipAt(-1); // batch skip
Layer->SetSkipAnimationAt(3, false);// restore glyph 3
TIP
SetStartDelayAt(-1, X)first, thenSetDelayAt(-1, Y)→ glyph i = X + i × Y. In reverse order,SetStartDelayAtuses absolute-set semantics and overwrites the stagger result.
Layer Configuration
UGlyphAnimationLayer offers four categories of configuration:
Playback Parameters
// Specify at creation (PlayDirection / PlaySpeed / NumberOfLoops)
UGlyphAnimationLayer* Layer = UGlyphAnimationLayer::CreateLayer(
AnimAsset, ETextAnimationBlendMode::Override, Schedule,
EPlayMode::Forward, 1.0f, 1);
// Or modify after creation via SetPlayMode
Layer->SetPlayMode(EPlayMode::PingPong, 2.0f, 0); // pingpong + 2× speed + infinite loop
Scheduling Queries (8)
GetGlyphCount() / GetGlyphStringAt(Index) / GetStartDelayAt(Index) / GetSkipAnimationAt(Index) / IsWhitespaceAt(Index) / IsPunctuationAt(Index) / IsCJKAt(Index) / IsDecoratorAt(Index) — all BlueprintPure.
Glyph Tweaks (51)
10 properties × 5 operations (Multiply / Divide / Add / Subtract / Clear*Steps) + ClearGlyphOverridesAt:
Layer->MultiplyScaleAt(0, FVector2D(1.2f, 1.2f)); // scale ×1.2
Layer->AddRotationAt(-1, 15.0f); // rotation +15°
Layer->DivideOpacityAt(2, 0.5f); // opacity ÷0.5
Layer->ClearGlyphOverridesAt(0); // clear all steps of glyph 0
Animation Clipping
Layer->SetAnimationClipAt(0.1f, 0.2f); // front trim 0.1s, back trim 0.2s (playback axis)
Factory Configuration
UGlyphAnimationFactory is the execution container for multi-layer baking:
- Create a factory — the base layer and schedule are required:
UGlyphAnimationFactory* Factory = UGlyphAnimationFactory::CreateFactory(BaseLayer, Schedule);
// or create from text
UGlyphAnimationFactory* FactoryFromText = UGlyphAnimationFactory::CreateFactoryFromText(BaseLayer, Text);
- Add layers — later layers have higher priority:
Factory->AddLayer(Layer1);
Factory->AddLayer(Layer2);
// or batch set
Factory->SetLayers({ Layer1, Layer2, Layer3 });
- Factory-level tweaks — 51 functions isomorphic to Layer, baked into
FBakedGlyph::FactoryOverrideand applied once to the final blended state during evaluation (not per-layer stacking):
Factory->MultiplyTranslationAt(-1, FVector2D(2.0f, 1.0f));
Factory->SetAnimationClipAt(0.0f, 0.5f); // factory-level global clipping
- Run the bake —
Factory->Bake()returnsFBakedStage(three-step pipeline: per-layer bake → layer tweaks → per-glyph copy → factory post-processing)
Plugin Global Settings
UTexturgeSettings is a UDeveloperSettings subclass, category "Plugins/Texturge":
UTexturgeSettings* Settings = UTexturgeSettings::Get();
Currently no configuration items — no fields beyond Get(). All bake parameters are determined at compile time through the class methods above.
Typical Configuration Flow
- Create a
UGlyphAnimationLayer: specify the animation asset, blend mode (base layerOverride), and the schedule array - Call
SetStartDelayAt/SetDelayAtfor per-glyph staggering; useSkipAt+ classification queries to skip whitespace - Adjust per-property curves with the 51 tweak functions (ordered multiply/divide/add/subtract steps)
- Create a
UGlyphAnimationFactory(base layer + schedule),AddLayerthe overlay layers, and apply factory-level tweaks as final polish - Call
Bake()to produceFBakedStage - Combine the above logic in the
BuildDefaultAnimationBlueprint event — the default_Implementationalready encapsulates steps 1–5