Single Blog

  • Home
  • Updated to version 1.8.5

Updated to version 1.8.5

version 1.8.5 (Nov 18 2025)

  • FLIP Fluids 1.8.5 includes many improvements, geometry node features, a variable density solver, bug fixes, and official compatibility support for Blender 5.0.
  • Compatibility Notes:
    • FLIP Fluids 1.8.5 is officially supported in Blender 4.5 to Blender 5.0.
    • Blender 5.1: At this moment there are no known compatibility issues specific to Blender 5.1 Alpha, but this could change as Blender 5.1 develops (Blender 5.1 Support).
  • Added: Variable density solver feature to Domain > World panel for mixed density liquids that float or sink (Documentation).
    • After enabling, each Fluid/Inflow object can be set to assign a density value to the generated fluid.
    • After baking, the density attribute values can be accessed from an Attribute Node with the name flip_density from the Fac output.
    • Tip: Rendering fluid particles shaded or hidden based on density can be useful for visualizing variable density simulations.
  • Added: Various geometry node features for customizing the fluid surface, fluid particles, and whitewater simulation meshes (Documentation).
    • These features can be found in the FF_GeometryNodes modifier on the fluid surface, particles, and whitewater simulation meshes.
    • New Fluid Surface Modifier Features:
      • Motion Blur > Apply Simulation Time/World Scale – Automatically scale motion blur according to the baked simulation time and/or world scale for consistent screenspace motion blur. If applying simulation time scale to motion blur, you will no longer need to manually animate motion blur scale with the time scale for slowmotion effects. This feature will only take effect if the simulation was baked in the current addon version or later.
      • Meshing > Shade Smooth – Option to specify whether to smooth shade or flat shade the mesh.
      • Meshing > Remove Mesh Near Domain Boundary – Options to remove parts of the mesh near the domain boundary to create a surface-only mesh. Contains options to enable or disable ±X/Y/Z sides of the domain and distance from the domain boundary. This feature works similar to the Domain > Simulation > Meshing Against Boundary feature except that the result is not baked into the mesh and can be applied after the simulation.
      • Meshing > Flatten Mesh Near Domain Boundary – Options to flatten the surface mesh towards a water level near the edges of the domain boundary. Useful for compositing or combining the surface mesh into a larger ocean plane.
        • Feature should be used in combination with the Remove Mesh Near Domain Boundary feature, using geometry nodes or domain settings.
        • Water level can be specified using a Z value or the Z coordinates of an object.
        • Flattened Width – Width of the flattened edge at the domain boundary.
        • Transition Width – Width of the smoothed flattening transition.
        • Store Displacement Attribute – Store amount of applied Z displacement as a flip_displacement named attribute. Enabling is required for matching displacement in the whitewater and fluid particle simulation meshes.
        • Store Transition Mask Attribute – Store transition mask as a flip_transition_mask named attributes. Values are in the range [0.0, 1.0] where 0.0 is fully flattened and 1.0 is no flattening. Useful for fading out the edges of the fluid surface in a shader.
    • New Fluid Particle and Whitewater Modifier Features. The following features are supported on both the fluid particle and whitewater meshes.
      • Material > Apply Material – Option whether to apply the specified material to the particles. Disable to inherit material from instances if object instancing is used.
      • Motion Blur > Apply Simulation Time/World Scale – Same as modifier settings on fluid surface.
      • Particle > Particle Display Mode – Settings for how to display and render the particles.
        • None – Display the particles as raw vertices.
        • Point Cloud – Display the particles as a Point Cloud type object. This is the most performant method to render and display particles in Blender.
        • Instancing – Display the particles with object instances. This is the least performant method to render and display particles in Blender, but offers more customizations over the shape. Try to limit the amount of particles rendered using this method to avoid performance issues.
      • Point Cloud and Instancing Options:
        • Particle Scale – Object scale of particles in Blender Units.
        • Particle Scale Multiplier – Multiply particle scale by this value. Useful for precision scaling for small particle sizes.
        • Particle Scale Random – Amount of linear randomized particle scaling.
        • Random Bias – Random bias of particle scaling distribution. Values less than 1.0, bias towards small particles. Values greater than 1.0, bias towards large particles. Value equal to 1.0, no bias.
      • Particle Instancing Options:
        • Instancing Mode
          • Icosphere – Instance icosphere objects over the particles.
          • Object – Set a custom object to instance over the particles.
          • Collection – Randomly instance objects from a collection over the particles.
        • Randomize Instance Rotation – Apply a random rotation for each particle instance.
        • Align Instance to Velocity – Align instance Z axis to the particle velocity vector. Requires enabling the FLIP Velocity attribute before baking.
        • Shade Smooth Instances – Option to specify whether to smooth shade or flat shade the instance objects.
        • Realize Instances – Convert particle instances to mesh geometry. Required for transferring simulation or custom attributes the particle geometry. This option can generate a large amount of geometry and result in performance issues for large amounts of particles or for high geometry instances.
      • Displace > Match Flattened Surface Displacement – If the Surface Modifier > Flatten Mesh Near Domain Boundary option is enabled, apply the same displacement to the particle Z level.
      • Lifetime Based Particle Scaling – Scale particles at the end of their lifetime. Requires enabling the FLIP Lifetime attribute before baking.
        • Final Scale Factor – Particle scale factor at the end of the particle lifetime.
        • Scaling Duration – Duration of the scaling transition in simulation seconds.
        • Lifetime Offset – Time offset for when the scaling transition begins.
        • Store Lifetime Scaling Transition Attribute – Store transition values as a flip_lifetime_transition named attribute. Values are in range [0.0, 1.0], starting at 0.0 before scaling transition begins and ending at 1.0 when scaling transition is complete. Useful for shading the particles based on scaling transition.
    • New Fluid Particle Modifier Features. The following features are only supported on the fluid particle meshes.
      • Age Based Particle Scaling – Scale particles at the beginning of their age. Requires enabling the FLIP Age attribute before baking.
        • Starting Scale Factor – Particle scale factor at the start of the particle age.
        • Scaling Duration – Duration of the scaling transition in simulation seconds.
        • Age Offset – Time offset for when the scaling transition begins.
        • Store Age Scaling Transition Attribute – Store transition values as a flip_age_transition named attribute. Values are in range [0.0, 1.0], starting at 0.0 before scaling transition begins and ending at 1.0 when scaling transition is complete. Useful for shading the particles based on scaling transition.
      • Filter Particles by Source ID – Show or hide particles based on Source ID attribute. Requires enabling the FLIP Source ID attribute. Useful for selectively rendering particles based on the Fluid/Inflow object that they are emitted from.
        • Contains checkbox options from 0 to 8 to control whether to show or hide particles with the corresponding Source ID. For example, disabling checkbox 2 will hide particles with Source ID = 2.
    • Added FLIP Fluids Sidebar > Geometry Node Tools > Update Geometry Node Modifiers operator to update the fluid surface, fluid particle, and whitewater geometry node modifiers to the current addon version.
      • Operator will transfer older modifier settings to the updated modifier where possible to closely match the previous result.
      • Operator will not delete existing FF_GeometryNode modifiers or datablocks to avoid data loss. Existing modifier will be renamed with a BACKUP prefix and disabled from the modifier stack. This backup can be removed when no longer needed.
  • Bug Fix: Fixed issues related to the File > Export/Import > FLIP Fluids Alembic (.abc) operators.
    • Fixed issue where exporter setup for fluid particle or whitewater may not be recognized by Blender’s Alembic Exporter as animated meshes due to not containing any modifiers.
    • Fixed issue where exporter may not apply the fluid surface smooth modifier.
    • Fixed issue where exporter would continue simulation export when the simulation cache does not exist, resulting in an empty Alembic file.
    • Fixed issue where exporter would not export velocity attribute when meshes contained certain versions of the FF_GeometryNodes modifier.
    • Fixed export issue where simulation meshes would not be exported if the outliner render visibility was disabled.
    • Fixed issue where importer could unexpectedly set motion blur velocity attribute to (0, 0, 0) depending on export configuration.
    • Fixed issue where imported Alembic mesh may not be animated if the first frame did not contain geometry.
    • Fixed import issue where the FF_GeometryNodes modifier on Alembic meshes would contain features that were not supported due to unsupported/missing attribute or feature that require addon scripting.
  • Bug Fix: Fixed warning messages related to deprecated bgl (OpenGL Wrapper) calls in Blender 5.0.
  • Bug Fix: Fixed bugs related to EEVEE render engine name change in Blender 4.5 and later.
  • Bug Fix: Fixed FF_GeometryNodes warning when setting material on invalid geometry.
  • Bug Fix: Fixed issue where some keyframed FF_GeometryNodes modifier values would not take effect in the render (related to issue #71908). All keyframeable modifier values are now supported.
  • Bug Fix: Fixed issue where an older Blend file compatibility update could trigger an error, resulting in a missing FF\GeometryNodes_ modifier on the fluid surface.
  • Bug Fix: FLIP Fluids Sidebar > Initialize Motion Blur operator now only switches the render engine to Cycles when the current render engine is set to a renderer that does not support custom motion blur (EEVEE or Workbench) to avoid switching away from third-party renderers.
  • Bug Fix: Added missing GPL license to command line operator scripts.
  • Bug Fix: Fixed issue where a Point Cloud type object could be set as a FLIP type object, resulting in baking errors. A popup error will be displayed to notify the user that Point Cloud objects are not supported as FLIP objects.
  • Bug Fix: Fixed ‘RuntimeError: Error: KeyMapItem not found in KeyMap 3D View‘ error during addon unregistration that could be triggered if the keymap was unavailable.
  • Bug Fix: Improved addon startup/registration performance by removing older and unused Blender 2.79 compatibility code.
  • Bug Fix: Fixed issue where some fluid surface attributes (age, lifetime, whitewater proximity, viscosity, color) were offset by half of a voxel.
  • Bug Fix: Fixed issue where Domain > Advanced > Simulation and Particle Stability > Viscosity Solver Max Iterations would be applied to the pressure solver instead of the viscosity solver.
  • Bug Fix: Fixed baking errors due to deprecated and removed Animation & Rigging Python API calls in Blender 5.0.
  • Bug Fix: Fixed bug where FLIP Lifetime attribute data could contain values less than the expected minimum value (ex: negative values).
  • Bug Fix: Removed unsupported API call to depsgraph update during frame change. This call was required for render stability in earlier versions of Blender, but caused stability issues in newer versions of Blender.
  • Bug Fix: Fixed issue where force field gravity scale would not be computed outside of the force field max distance bounds, resulting in incorrect gravity scale and box shaped artifacts when combining multiple force fields.
  • Bug Fix: Fixed issue where object delta transforms were not applied to keyframed FLIP objects within the simulation.
  • Bug Fix: Fixed issue where FLIP Fluids Sidebar > Compositing Tools would render the shadowcatcher pass by default.
  • Bug Fix: Removed stray debugging console outputs during Blender shutdown.
  • Bug Fix: Fixed error that would prevent Shift + A > FLIP Fluids > Quick Liquid operators from completing when the addon version does not contain built-in materials.
  • Bug Fix: Fixed UnboundLocalError that could be triggered during render due to operating on an invalid simulation mesh object types.
  • Bug Fix: Fixed issue where some presets assets contained an orphaned mesh data block that would result in an unrelated object to be imported from the asset library into the Blend file.
  • Change: Default values for fluid particle viewport preview display are now set to the same value to avoid flickering during Surface/Boundary/Interior particle type transitions.
  • UI: Updated collapsible panel UI elements to used modern Blender UI features.
  • UI: Improved wording on ‘Missing geometry nodes modifier‘ warning to direct the user to click the operator to resolve the issue.
  • UI: Corrected FF_GeometryNodesFluidParticle > Particle Scale tooltip that contained text for another parameter.
  • UI: Added a copy of the Domain > World > Global Force Field Weights to the FLIP Force Field object menu for convenience.
  • UI: Fixed inconsistent capitalization of Skip Re-export option across the addon UI.
  • UI: Updated Twitter labels to X (Twitter).
  • Building/Compiling:
    • CMake: Removed building a standalone Alembic export executable. This feature is now built as a shared library.
    • CMake: Fixed MacOS RPATH configuration that prevented Alembic dependencies from being found.
    • CMake: Source files are no longer collected via CMake GLOB and are instead specified explicitly to avoid re-build errors. If adding source files, remember to add the file to the CMakeLists.txt sources list.
    • CMake: Corrected publicly linked libraries to private.
    • build.py: Removed build script option flags to supply Alembic and/or Imath dependency filepaths.
    • build.py: Script can now be supplied with a list of dependency filepaths to package within the addon with the -package-dependencies flag.
    • C++: Removed header include guards and replaced with #pragma once preprocessor directive.
    • Python: All compatibility code related to Blender 4.4 and earlier has been removed to simplify the code base.
    • Python: Increased minimum version compatibility to Blender 4.5.0 in blender_manifest.toml