tachyonfx-v0.19.0
·
139 commits
to development
since this release
tachyonfx 0.19.0 - 2025-09-27
The documentation for most effects now contain links to interactive examples powered by
tachyonfx-ftl.
Added
fx::evolve: Creates evolving text effects that transform characters through a series of symbols.
Combine with.with_pattern()for progressive transformation.fx::evolve_into: Evolve effect variant that reveals underlying buffer content at completion (alpha=1.0).fx::evolve_from: Evolve effect variant that reveals underlying buffer content at the start (alpha=0.0).EvolveSymbolSetenum: Defines symbol progressions for evolve effects with variants:BlocksHorizontal: Horizontal block progression (▏▎▍▌▋▊▉█)BlocksVertical: Vertical block progression (▁▂▃▄▅▆▇█)CircleFill: Circle fill progression (◌◎◍●)Circles: Circle progression (·•◉●)Quadrants: Quadrant block progression (▖▘▗▝▚▞▙▛▜▟█)Shaded: Shading progression (░▒▓█)Squares: Square progression (·▫▪◼█)
Patterntrait: New pattern-based spatial effects system for controlling how effects progress across screen areas:CheckerboardPattern: Creates alternating checkerboard reveal patterns with configurable cell size and transition widthCoalescePattern: Randomized coalescing effects where cells activate at random thresholds for organic transitionsDiagonalPattern: Diagonal sweep effects in four directions (top-left to bottom-right, etc.) with smooth gradientsDissolvePattern: Randomized dissolve effects where cells deactivate at random thresholds - the reverse ofCoalescePatternRadialPattern: Radial expansion effects from configurable center points with parameterized transition widthsSweepPattern: Linear sweep effects in four cardinal directions (left-to-right, right-to-left, up-to-down, down-to-up)
Effect::with_pattern(): Applies spatial patterns to pattern-compatible effects, supporting:fx::coalesce,fx::coalesce_fromfx::dissolve,fx::dissolve_to,fx::evolve,fx::evolve_from,fx::evolve_intofx::explodefx::hsl_shift,fx::hsl_shift_fgfx::fade_from,fx::fade_from_fg,fx::fade_to,fx::fade_to_fgfx::paint,fx::paint_fg,fx::paint_bg
- Interactive Examples: DSL examples for most effects at https://junkdog.github.io/tachyonfx-ftl/ and linked from docs.
fx::paint: Applies color painting effects to foreground and background.fx::paint_fg: Paints only the foreground color.fx::paint_bg: Paints only the background color.
Breaking Changes
fx::translate: Changed fromtranslate(Option<Effect>, (i16, i16), timer)totranslate(Effect, Offset, timer).
DSL
CellFiltermethod chaining: supports.negated(),.into_static(), and.clone()methods in DSL expressions.fx::translateeffect now available in DSL expressions with full roundtrip support.- Documentation revised for conciseness and to reflect current DSL capabilities and limitations.
Changed
FilterProcessor::validator(): Changed visibility frompub(crate)topub.CellValidator: Changed visibility frompub(crate)topub.CellValidator::is_valid(): Changed visibility frompub(crate)topub.
Deprecated
FilterProcessor::predicate(): Deprecated in favor ofvalidator()method which provides better performance.fx::resize_area(): Deprecated due to poor design and functionality issues. No replacement planned.- Feature
web-time: Use thewasmfeature instead.
Fixed
- no_std compatibility: removed
simple-easingcrate dependency. - no_std compatibility: removed implicit std math function usage with feature-gated implementations.
- Fixed
Interpolation::CubicOutandInterpolation::CubicInOutincorrectly calling circular easing functions. - Fixed
Interpolation::QuintInto use correct mathematical formula. fx::remap_alpha: Fixed incomplete reset implementation that could cause state persistence across effect resets.
Removed
simple-easingdependency: replaced with internal easing implementations for better no_std compatibility.
