Tags
Creators
Details
Licensed ARR
Published 3 years ago
Updated last week
All versions
1.3.11-forge-mc26.2
Release
Fusion 1.3.11last week 13
Compatibility
Minecraft: Java Edition
26.2
Platform
Forge
Supported environments
Client-side
Changes
Fusion 1.3.11
- Significantly reduced memory used by Fusion models
- Facing and chunk render type of
MutableQuads are now stored as bit flags connectingtextures ignore non-default tiles when predicate is always true or always falseconnectingtexture sub-texture data is now stored more compactly when some tiles are empty- When
connectingtexture has no sub-texture, its tiles are initialized lazily
- Facing and chunk render type of
Fusion 1.3.10
- Fixed model item transforms (
displayproperty) translations not being scaled by 1/16th
Fusion 1.3.9
- Fixed
dimensionblock model predicate not working for chunk geometry
Fusion 1.3.8
- Fixed crash when using
continuoustexture type as a sub texture for other texture types - Fixed texture dependencies for composite model not always being loaded
- Fixed crash when breaking a block targeted by a block model modifier
- Fixed quad material cache not being invalidated when copying quad properties leading to incorrect material properties
- Fixed Sodium preventing Fusion animated textures from animating
Fusion 1.3.7
- Fixed crash when breaking blocks targeted by block model modifiers due to Mixin bug
Fusion 1.3.6
- Added
random_offsetproperty for block model modifier model entries to overwrite hardcoded block random offsets - Improved randomness of
randomtexture type - Significantly reduced memory footprint of
MutableQuads and thus models from Fusion - Fixed
match_state_in_frontbehaving asmatch_state - Fixed incorrect uv calculation when explicitly specifying frame indices for animated textures leading to it always showing the first frame
- Fixed block model predicates being rotated incorrectly due to floating point errors
- Fixed
compositemodel parents not being loaded
Fusion 1.3.5
- Directional model predicates, i.e.
match_blockandmatch_state, are now rotated along withcompositemodel entries - Replaced vanilla default uv calculation of model elements with calculation that better handles elements outside the center block space
- Fixed deserialization of item transforms (
displayproperty) for Fusion models - Fixed
match_block,match_statemodel predicates andmatch_block,match_state,match_block_in_front,match_state_in_frontconnection predicates only using the last block from theblocksarray property - Fixed origin being offset for
compositemodel transforms - Fixed composition order of
compositemodel transforms with blockstate file transforms - Fixed vanilla uv-lock handling breaking for model transforms that translate or scale the model
Fusion 1.3.4
- Fixed threading issue with
match_blockandmatch_stateblock predicates potentially leading to incorrect results or crashes - Fixed element face 'uv' property being ignored
Fusion 1.3.3
- Fixed deserialization of
dimension,match_block, andmatch_stateblock predicates - Fixed deserialization of
dimensionentity predicate
Fusion 1.3.2a
- Fixed crash when mods bake models outside the normal baking window
Fusion 1.3.2
- Fixed connecting texture predicate resolution for item models
Fusion 1.3.1
- Fixed
overlayconnecting texture layout producing way too many quads - Fixed
connectionsproperty of connecting textures not working - Fixed base texture properties not working for
connectingandrandomtexture types - Fixed geometry of
basemodels being duplicated - Fixed crash with quick pack mod
- Renamed
ConnectingModelData.ConnectingModelDataBuildertoConnectingModelData.Builder - Fixed model materials map serialization not including '#' for references
Fusion 1.3.0
- Model related changes:
- Overhauled
ModelTypeand how models are loaded:- Any model with a Fusion model as parent will now be loaded as a Fusion model
- Changes for
basemodel type:- Model can now be made emissive, through
emissiveproperty - Shading can now be disabled, through
shadeproperty - Ambient occlusion can now be disabled, through
ambient_occlusionproperty - Lighting in guis can now be changed, through
gui_lightproperty - Elements can now have
light_emission,emissive,shade,ambient_occlusionproperties - Element faces can now have
light_emission,emissive,shade,ambient_occlusionproperties
- Model can now be made emissive, through
- Overhauled block and item model modifiers:
- Added
priorityproperty - Modifiers are now applied in order of
priority, then file name, rather than 'random' - Missing targets (like modded items/blocks) can now be ignored, through
ignore_missing_targetsproperty - Added
default_model_overwritesto allow changes the default model when item/block model predicates are met - Added
append_modelsto append models when item/block model predicates are met - For block model modifiers,
show_breaking_overlaycan now be set per model entry
- Added
- Added block model predicates:
- Simple
true,false,and,or,nottypes match_blockchecks whether the block at a certain offset matches certain blocksmatch_statechecks whether the block at a certain offset matches certain blocks and state propertiesbiomechecks whether the block is in a biomedimensionchecks whether the block is in a dimensionaltitudechecks whether the block's y-position is within a range
- Simple
- Added item model predicates:
- Simple
true,false,and,or,nottypes countchecks if a stack's count is within a rangedurabilitychecks if a stack's durability is within a rangeenchantmentchecks whether an enchantment is present has a certain levelmatch_namechecks whether an item's custom name matches a string or regexpotionchecks whether the stack has a potion type
- Simple
- Added
compositemodel type:- Allows combining multiple models
- Models can be applied conditionally based on item and block predicates
- Models can be translated, scaled, and rotated
- Overhauled
- Texture related changes:
- Overhauled
TextureTypeand how textures are loaded:- Textures can now have multiple texture atlas sprites
- Textures can now have sub-textures
- Any model using a Fusion texture will now be loaded as a Fusion model
- Added generic quad processing for custom texture types
- Changes for
basetexture type:- No longer requires a
basemodel
- No longer requires a
- Changes for
connectingtexture type:- No longer requires a
connectingmodel - Each tile is now its own sprite on the texture atlas
- Empty tiles (completely transparent) are ignored and not stitched or processed
- Tiles can now use a sub-texture type, through
sub_textureproperty - Animated image layout can now be per-tile, through
per_tile_animationproperty - Added an option for a default connection predicate, through
connectionsproperty - Changes to connection predicates:
- Added
trueandfalsetypes - Added
ignore_missingoptions formatch_block,match_state,match_block_in_front,match_state_in_front - Allow specifying multiple blocks for
match_block,match_state,match_block_in_front,match_state_in_front
- Added
- No longer requires a
- Changes for
randomtexture type:- Each tile is now its own sprite on the texture atlas
- Empty tiles (completely transparent) are ignored and not stitched or processed
- Tiles can now use a sub-texture type, through
sub_textureproperty - Added randomness options
position,position_facing,position_axis, throughrandom_sourceproperty - Animated image layout can now be per-tile, through
per_tile_animationproperty - Increased maximum
rowsandcolumnsfrom 10 to 100
- Changes for
continuoustexture type:- Default tile is now its own sprite on the texture atlas
- Increased maximum
rowsandcolumnsfrom 10 to 32
- Changes for
scrollingtexture type:- Added 'wrap' loop type to allow the frame to wrap around the image
- Overhauled
- General changes:
- Error messages are now printed in a user-friendly readable format
- Improved clarity of error messages
- Bug fixes:
- Fixed handling of
fulllayout connecting textures with a legacy square image - Fixed inconsistent randomness for block model modifier models
- Fixed geometry key for block model modifiers
- Fixed handling of generated item models
- Fixed concurrency issue when using
pane_culling_fixpotentially leading to corrupted quads - Fixed item transforms not getting serialized for base model data
- Fixed incorrect scaling of origin for rotation of base model data elements
- Fixed not all vanilla model properties being serializable through
cuboidmodel type - Fixed continuous textures not working correctly when rotated
- Fixed thin edges sometimes showing around connecting, continuous, and random textures
- Fixed sometimes broken mipmaps for Fusion textures on Minecraft 1.12
- Fixed integration with FramedBlocks on Minecraft 1.20.1 and 1.21.1
- Fixed inconsistent ordering of model modifiers on older Minecraft versions
- Fixed model ordering of appended models in block model modifiers not being maintained when some models are vanilla and some are not
- Fixed handling of
Update to Minecraft 26.2
Update to Minecraft 26.1
Fusion 1.2.12
- Fixed handling of connections key references in connecting models
- Fixed texture references added through base model data builder having an extra '#'
Fusion 1.2.11a
- Fixed
enchantmentitem model modifier predicate not working for enchanted books
Fusion 1.2.11
- Initial release of Fusion for Minecraft 1.21.11
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:p19vrgc2:v8Gq76k3"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:p19vrgc2:v8Gq76k3"
}

