Skip to content

TransitionFX v1.4.0

Choose a tag to compare

@github-actions github-actions released this 03 Sep 12:14
· 32 commits to master since this release
ca9b27e

Added

Built-in Effects (+2, total 30)

  • Stripe Cascade — The screen is divided into stripes that wipe closed one after another with a staggered delay, cascading across the screen. Stripe count, direction (4-way), stagger delay, and edge softness are adjustable (SplitCount, Direction, StripeDelay, Smoothness). Adds the DA_StripeCascade preset, M_Transition_StripeCascade master material, MI_Transition_StripeCascade instance, the MF_StripePos material function, README (EN/JA) Built-in Effects table entries, and the L_ShowCase sample level entry.
  • Box Roll — Boxes roll in from the right edge and stack up row by row until they cover the screen. Row count, roll speed, and per-column/per-row stagger are adjustable (Rows, Speed, DTCol, DTRow). Anti-aliasing is analytic (1.5 px from ViewSize), and the whole animation is driven by the standard Progress parameter. Adds the DA_BoxRoll preset, M_Transition_BoxRoll master material, MI_Transition_BoxRoll instance, the MF_Rotate2D / MF_SdBox2D / MF_BoxDist / MF_RowDist material functions, a showcase level entry, preview GIF, and README (EN/JA) Built-in Effects table entries.

Effect-count references were updated to 30 across the .uplugin description, the Preview Tool manual, and docs/SHOWCASE_LEVEL.md.

  • Project Settings page (UTransitionFXSettings) — New developer settings class exposing plugin configuration under Project Settings > Plugins > TransitionFX (saved to DefaultGame.ini). This page is the future home for additional plugin-wide options.
  • Configurable effect pool size — The per-effect-class pool cap (previously hardcoded at 3) is now exposed as MaxPoolSizePerEffectClass in the settings page. Set to 0 to disable pooling entirely.

Changed

  • Plugin version bumped to 1.4.0 (TransitionFX.uplugin VersionName).
  • Preview panel batch capture extracted into FTransitionPreviewBatchCaptureDriver — The dev-tools batch GIF workflows (all-effects batch and per-easing batch, TRANSITIONFX_DEV_TOOLS) moved out of STransitionPreviewPanel into a dedicated driver that steers the panel through callbacks and advances on the capture engine's OnWriteFinished. The panel drops to ~725 lines and no longer contains any batch state. Editor-only, no behavior change.
  • Preview panel GIF capture extracted into FTransitionPreviewGifCapture — The editor preview panel's single-GIF capture pipeline (fixed-step frame grabbing, save-path resolution, GIF encoding, notifications) moved out of STransitionPreviewPanel into a dedicated capture engine. The panel now decides the destination up front (batch modes pass an explicit path; interactive capture gets the save dialog) and the batch drivers advance via an OnWriteFinished delegate instead of being called from inside the capture finalizer. Editor-only, no behavior change.
  • Sequence playback extracted into UTransitionSequencePlayer — The Phase 2 refactor planned since v1.2.0: sequence step/loop/delay logic moved out of UTransitionManagerSubsystem into a dedicated internal UTransitionSequencePlayer object (created lazily on first PlaySequence call). No public API change — PlaySequence, StopSequence, IsSequencePlaying, GetCurrentSequenceStep, and the sequence delegates remain on the subsystem and behave identically.
  • Sample project build settings updated for Unreal Engine 5.8. TransitionFX_Dev.Target.cs and TransitionFX_DevEditor.Target.cs now use DefaultBuildSettings = BuildSettingsVersion.V7 and IncludeOrderVersion = EngineIncludeOrderVersion.Unreal5_8, clearing UBT's backward-compatibility [Upgrade] notices. The new defaults (strict MSVC inline conformance, Precise floating-point semantics for Editor targets, and undefined-identifier / return-type / dangling-reference / unreachable-code diagnostics promoted to errors) are accepted without overrides — both plugin modules rebuild warning-free under them. Note that these UBT values require Unreal Engine 5.7 or newer; the TransitionFX plugin itself is unaffected and still targets 5.5+. The sample project's EngineAssociation is now 5.8 accordingly, so project file generation and builds resolve to a UE 5.8 install (older engines' UBT cannot parse the V7 target settings).

Fixed

  • Fixed a misspelled function output on MF_CorrectAspectRatio and MF_GetMaxScreenRadius: AspectRaito is now AspectRatio. The 15 master materials that consume this output connect by pin, so they are unaffected; only the pin label shown in the material editor changes.
  • Fixed a misspelled scalar parameter on M_Transition_Pixelate: MaxResoluution is now MaxResolution. The shipped MI_Transition_Pixelate instance and DA_Pixelate preset never overrode this parameter, so the built-in effect is unaffected. If your project overrides it by name — in a custom material instance or via FTransitionParameters — update the name to MaxResolution.
  • Fixed a potential freeze / stack overflow when playing a looping sequence whose entries all have a null preset (e.g. a freshly created UTransitionSequence with bLoop enabled and presets not yet assigned). Null-preset entries are now skipped iteratively instead of recursively, and a sequence in which no entry is playable finishes immediately with a warning (broadcasting OnSequenceCompleted) instead of cycling forever. Also guarded sequence playback against the Entries array being emptied at runtime while a step delay is pending.