Is it possible to deform objects proportionally but still remain editable? Yes, you can use the hook modifier. The idea is that you can hook a set of vertices on the first object to a second separate object and then move or rotate that second object around. That makes the position of the second object control the vertices of the first. It’s like grabbing your vertices and moving them using a modifier – a non-destructive operation.
Let’s see how that works in practice.
Our first object is our trusty Cube. Then we’ll create the second object. This can be any object – another cube, a sphere, an existing object that you have already built. For simplicity’s sake, we’ll just create a humble Empty. brings up the Add Object menu:
Change to front ortho view and move the Empty above the cube:
Switch to perspective view [middle mouse button drag]
Change to wireframe transparent mode .
Select the Cube and toggle to Edit mode :
Change to Vertex select mode
Select the top four vertices
While the four vertices are selected, select the Empty object as well with [Left Click]:
Now we designate the 4 vertices as hooks on the cube with
Immediately a Hook modifier is added to the Cube:
Notice that the hook icon displays the words Hook-Empty which mean that the hooks (the 4 previously-selected vertices) are now connected to the Empty.
Now let’s see how this works. Go to Object mode and Solid View with transparency
Move the Empty around :
Well, “big deal” you might say sarcastically, “I can just go into Edit mode, select the 4 vertices and simply move them”. But think about this for a moment. If the second were not an Empty, but another object. As you moved that object into position, the 4 vertices forming the top surface would also move the same distance. That would save a tremendous amount of tricky fiddling!
But you can do more with Hooks
Start off with the cube again in a new drawing, and add the empty as we did above.
Select the cube and change to Edit mode
Then create 10 Loop-Cuts on each three faces:
Change to Front View ,
Switch back to Transparent Wireframe view ,
Set Vertex Select mode .
Now select the 100 vertices on the top surface. Then select the Empty object as well with [Left Click]: :
Now we designate all 100 vertices as hooks on the cube with :
Switch back to Object mode and move the empty up:
Now comes the magic:
Select the cube and increase the Falloff Radius in the modifier panel:
This deformation can now be accurately controlled by:
- Selecting the Empty and moving it
- Adjusting the Radius value in the Modifier panel. This can be quite critical and appears not to work if the radius is too large or too small.
- Changing the Type of deformation in the Modifier panel
For accurate control, work in an Ortho view. To see the effect, look in Perspective view:
We can pretty this up further by setting Auto Smooth to a suitable angle. To smooth the faces making up the curved shape but not the vertical cube edges we would set the Auto Smooth angle to a value greater than 60 and less than 90. Then Right-Click in the viewport and choose Shade Smooth:
This is what you get:
The wonderful advantage of hooks is that they are non-destructive and therefore the shape can be easily adjusted at a later stage.