Using Shape Keys -> Unwanted Distortion when rotating

I am making a very basic model of a Heinkel 111 Bomber. I am using Blender 2.58a.
Still the plane is a one-piece mesh. The “moving” parts of the mesh should be prepared to move in an animation, e.g the propellers, the bomb and gear doors etc. I am now experimenting with shape keys to make the gear retractable. Using the shape keys with the gear doors works, but the wheel and its suspensions are distorted. (They “shrink” while being rotated and grow again when in horizontal or vertical position) :spin:
Is the behaviour of shape keys so unpredictable ?

I have attached my attempt of modelling the plane.
To see the effect, move the “Value” slider of the shape key “DoorOpen” from 0 to 1 and the other way around

Thanks for any help.


he111spit.blend (511 KB)

Why have you made it out of one single object? In reality the bomber would be a collection of many individual parts. These different parts could then be individually animated, much simpler than trying to use shape keys to animate your object.
Why not take a hint from the real world, you wouldn’t get very far if your propellers were part of the fuselage as in your model.

I started the plane with a 8-side cylinder and used extrusions / loop cuts to make the basic fuselage with wings. Then i refined the model with windows etc.
Well i tried to take another way to my goal, in order to learn more of blender. Splitting my model to many parts was my Plan B. Thought this distortion of the wheel while moving it in and out of its box was a well known bug or so.
I mean in one case (doors) it works, in another case not ? Very strange.
But changing the modelling strategy just evades my problem, but i still do not know how to actually solve it.
Thanks for answering anyway.

The mesh flow needs work, but overall it is a nice looking model. It is interesting that you try to move mechanical parts with Shape Key. Shape Key is generally used for more organic geometry. But I suppose it can be made to work for parts so long as the geometry you are trying to change is not attached to the main body.

One of the reason parts of vehicle is not made to move with Shape Key is the difficulty in texturing. How are you going to texture this? Other reason is difficulty in aligning rotational axis. With separate object parts with axis defined, it is easy to setup axis of rotation. With Shape key, you some how need to create a rotational axis out of number of vertexes.

Shape keys work through a process of “projecting” the basis mesh/set of vertex points to the new shape/mesh vertex points . Because this is calculated using vectors (vertex point X is linearly interpolated to vertex point Y), shape keys are not the ideal solution for animating arcs or rotations in a mesh . AFAIK this is how shape keys/morph targets etc. work in most 3D packages, not just Blender .

In your case the vertices that form the wheel etc. are moving in a straight line, not an arc, from the closed to the open position/shape and so the odd scaling when animated .

If you insist on using shape keys you can mitigate the scaling effect by adding additional shape keys along an arc … though there will always be an issue with scaling no matter how small . You will literally be trying to “circle the square” with this method .

I mean in one case (doors) it works, in another case not ?

The doors do also scale, though less noticeably, because the arc/rotation involved is much smaller then the landing gears .

If you don’t want to separate your mesh into parts like Richard suggested, you can assign an armature to the landing gear part of the mesh (or any other moving parts) using vertex groups instead and animate that way .

Now I have finally separated the gear, gear doors and propellers from the plane. On the first run it seemed to be simpler with shape keys, because rotating one set of doors also moved the other set. (mirror modifier on plane) It also took me a bit of fiddling around to set several local rotation axes for multiple objects in order to open / close the gear doors more realistically. Anyway, now I am about to make a good looking fast rotating propeller. But it looks like there needs to be some fake to do. The rotation animation alone and even motion blur does not seem to be enough. The propeller looks good up to a certain speed, but above that it stands still or rotates backwards a little, with blades still clearly visible. In reality it should be almost a blurry circle around the spinner, with no blades visible. Can this be done with higher fps, motion blur or do I need to replace the blades with a circle or similar to create the effect ? My first goal is to create a takeoff animation, with engines being started, plane rolling and accelerating, taking off and retracting the gear.