1.4
Compatibility
Required content
Changes
Fresh Blocks Animation 1.4 — Engine Update
Combined changelog covering all changes from 1.3.6 through 1.4.
New Animation Engine and Rendering
- Added native Minecraft model rendering, replacing auxiliary BlockDisplay visuals for supported blocks.
- Lighting, biome tinting, and ambient occlusion are sampled from the block model at its actual world position.
- Added synchronized animations for doors, beds, tall blocks, and double chests, with shared timing and transformation pivots.
- Added support for rendering compatible block entities through their normal renderers. Collision, block states, and container contents remain in the world.
- Reworked how the original block model is hidden during an animation and restored afterward.
- Added protection against outdated chunk rebuild results and cleanup when changing worlds.
- Preserved the Legacy rendering path for unsupported sources.
Transparency and Visual Effects
- Added animated transparency through
material.opacity, ranging from 0 to 1. - Added the official Fade In preset: blocks gradually become visible without changing size.
- Improved translucent surface handling while preserving the original texture transparency and foliage cutouts.
- Added Start from Black: blocks appear dark and gradually return to their normal brightness.
- Added adjustable initial brightness, independent or motion-matched duration, and several transition curves. The brightness effect is disabled by default.
Textures and Secondary Animations
- Added custom PNG overlays supplied through resource packs and an enchanted glint effect.
- Added support for up to two material layers, with normal, additive, and multiply blending.
- Layers can inherit surface lighting or use an unlit mode.
- Added animated layer opacity, UV scale, offset, rotation, and glint speed.
- Layers can have their own delays and durations independently of the main movement. Longer effects can continue after movement finishes while holding the final pose.
- Secondary effects can be stored in separate JSON files, linked to a specific animation, or selected globally.
- Added Off, individual preset, Random, and Selected modes, along with weights, activation probability, and repeat avoidance.
- Added
append,replace, andkeepcomposition modes for combining global effects with the primary preset’s material. - Added Enchanted Glint and Amethyst Overlay examples.
- Enchanted Pop remains a custom material example and has been removed from the official primary animation catalog.
New JSON Animation Format
- Added format 3, featuring keyframes for position, scale, rotation, and opacity.
- Added linear and stepped interpolation, easing curves, and individual axis channels.
- Added configurable rotation order, angle units, and transformation pivots.
- Animation duration can follow the mod settings or be defined by the preset.
- Converted the standard Scale, Pop, and Fade In presets to keyframes. Existing identifiers remain supported, including hidden
keyframe_*compatibility presets. - Preserved support for formats 1/2 and existing expressions.
- Improved hot reload: active animations retain their captured definitions and effects, while new placements use updated data.
- Invalid edits retain the last valid animation definition.
- Added updated JSON schemas and expanded validation of malformed files.
Interface
- Animation cards now support custom text colors, bold text, and italics through
uimetadata. - Bundled presets now have distinct styles, while Random uses rainbow lettering. Rainbow styling is also available to custom presets.
- Fade In now has a dedicated 2D preview with animated opacity.
- Moved the Visual Effects button below the animation cards.
- Fixed the effects button’s width, positioning during searches, and contribution to scroll height.
- Added a unified effects menu and a dedicated Start from Black action.
- Improved control placement at small GUI sizes.
- Removed the separate renderer selection menu, its button, and the unused spacing. Rendering backend selection is automatic by default.
Sodium and Iris
- Added a native adapter for Sodium 0.9.2+mc26.3.
- Added an adapter for Iris 1.11.6 and 1.11.7 for Minecraft 26.3, paired with Sodium 0.9.2+mc26.3, including material context and animated model submission to the shadow pass.
- Installing a supported Iris version no longer automatically disables native rendering.
- Unverified Iris/Sodium combinations use Legacy rendering and display a notice with two actions: Continue Playing and Update Iris.
- Notice acknowledgement is saved for the installed version combination.
- Fixed GeckoLib easing function calls with Minecraft 26.3’s fastutil version. Existing motion provider preferences are preserved.
Diagnostics and Updating
- Updated
/FBA-test, while retaining/fba-test,/FBA_TEST, and/fba_testaliases. - The test checks build metadata, resources, bundled and user JSON files, documentation, and adapter availability without modifying the world.
- Results are separated into PASS, FAIL, and SKIP, with a report saved to
logs/fba-test-latest.txt. - Added backend details, fallback reasons, and animation diagnostics through
/FBA_BACKEND. - Added
/FBA_EFFECTSand/FBA_OVERLAYcommands. - Updated documentation for animations, effects, compatibility, migration, and testing.
- Migration of known bundled files and documentation preserves user edits. Existing configurations and manual overrides are not reset.
- Ran automated checks for Vanilla/Indigo, Sodium, Iris 1.11.6/1.11.7, and Legacy fallback, alongside JSON, interface, material, and FBA shader tests.
Compatibility and Current Limitations
- Native features apply to the main Minecraft 26.3 Fabric build, requiring Java 25, Fabric Loader ≥0.19.3, and Fabric API ≥0.162.0. The Legacy-based Minecraft 26.2 adaptation is not a full backport of the new engine.
- While an Iris shaderpack is active, FBA’s custom PNG overlays, glint, and emissive effects are currently disabled. Opacity and brightness rendering may depend on the shaderpack.
- Legacy rendering does not provide the full set of native effects.
surface_uvand standalone frame-animated PNG textures are not currently supported.
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:Arva0REJ:n1IW9AjT"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:Arva0REJ:n1IW9AjT"
}

