← All ideas
  • Published 10 Feb 2025

FFD (Free-Form Deformation) Modifier

Proposal: Implementing FFD (Free-Form Deformation) modifier in Blender

Introduction

The FFD (Free-Form Deformation) tool allows users to deform objects using a control cage (lattice) that automatically adapts to the object’s volume and orientation . This feature is widely used in 3ds Max , where it provides an intuitive way to manipulate object shapes without manually adjusting vertices. Adding FFD to Blender as a modifier would significantly enhance modeling capabilities, making shape adjustments faster and more efficient.


Core Features of FFD in Blender

  1. Automatic Generation of the Control Cage

    • The FFD lattice should automatically conform to the object’s bounding box and orientation .
    • Users can select the resolution of the lattice (e.g., 2×2×2, 3×3×3, 4×4×4 ), defining the level of deformation control.
  2. Interactive Deformation via Control Points

    • Users manipulate control points of the lattice to reshape the object in real-time .
    • Ability to select and transform individual control points, edges, or faces of the FFD cage.
  3. Support for Multiple Objects

    • A single FFD modifier should be applicable to multiple selected objects simultaneously .
    • Objects remain linked to the same FFD cage, allowing coordinated deformation.
  4. User Controls & Options

    • Reset – Restore the original shape before FFD was applied.
    • Apply – Convert the deformation into actual geometry.
    • Preserve Volume – Prevent extreme distortions when manipulating the lattice.
    • Custom Orientation – Allow users to manually align the control cage if needed.

Implementation Suggestions for Blender

  1. Integrating FFD as a Modifier

    • Implementing FFD as a new modifier (similar to the Lattice Modifier) would make it easy to use within Blender’s existing workflow.
    • When added, the FFD cage would automatically adapt to the object’s dimensions and orientation .
  2. Adaptive Cage Behavior

    • The lattice size should be automatically calculated based on the object’s bounding box .
    • The FFD should rotate to match the object’s orientation for accurate transformations.
  3. Support for Animation

    • Control points of the FFD cage should be animatable using keyframes.
    • Support for Shape Keys to enable smooth shape transitions.
  4. Performance Optimization

    • Utilize GPU acceleration (OpenGL/Vulkan) to ensure real-time editing performance.

Why FFD Should Be Added to Blender

  • Improved Workflow Efficiency – FFD would provide an intuitive way to deform objects without complex manual adjustments.
  • More Control for Artists – Users could fine-tune deformations using a predictable and interactive control system .
  • Non-Destructive & Flexible – Implementing FFD as a modifier would allow non-destructive modeling and easy adjustments at any time.
  • Familiarity & Industry Standard – Many artists coming from 3ds Max or Maya already use FFD, and its integration into Blender would help with workflow transition.

Call to Action: Support FFD in Blender

If you believe FFD should be added to Blender , vote for this proposal on Right-Click Select or join the discussion on Blender Developer Talk . Let’s bring this powerful tool into Blender’s modeling toolkit!

100%

Development Status: Open

Upvote 5 Downvote 0
ilyas
10 Feb 2025

1 Comment

CraigJones

Lattice Modifier in Blender works well as the lattice object can have multiple shape keys to 'reset' to the original shape of the lattice. The only thing I see that is not possible here in the current Lattice workflow is automatically scaling to the bounding box of the selected objects it is parent of. To match rotation, the lattice should be a child of a bone in the armature of the object(s).

1