I am working on a scene with a car chase and I am struggling with adding noise (rotation) to a camera that is tracked to an empty via object constraint.

I have one camera that is static and tracked to an oncoming car (object constraint 1), once the car passes, the camera starts tracking a new car coming from the same direction (chasing the first one; object constraint 2). The transitions are made via keyframes with influence parameters of both tracking constraints (see the picture).

I would like to add a bit of noise to the rotation of the camera to simulate action. However, whatever I do to the respective curves in the graph editor seems to get overridden by the tracking constrains.

A workaround would be to parent the camera directly to a tracking empty (one on each car), but then I would need to use multiple cameras because the parent value cannot be animated.

Thanks for any tips!

Lukas enter image description here


2 Answers 2


Constraints work after fcurves, including fcurve modifiers.

You have a few options. The easiest to describe would be to select the camera and bake action with "visual keying" and "clear constraints" enabled. This will bake the track-to constraint to keyframes, after which it will no longer be live, and you can use additive noise with an fcurve modifier if you want.

Another option here is to instead add the noise modifier to the location that the camera is tracking. If you're tracking something rendering, that you don't want jittering, then make an empty at the same location and track that instead, then parent the empty to the original track target. By adding noise to the motion of this target, you add noisy rotation to the camera that is tracking it. You can still animate the influence of the various track-to constraints that are targeting different empties.

A third option here is to create an empty at the position of the camera, give it the constraints you had for the camera (including keyframes), and then just parent the camera to it-- after which, you can delete the constraints on the camera, because it'll be acquiring its rotation and position from its parent. The empty can still move around or track different targets via animated constraints, just as your camera does. This basically lets you run things in a different order: base fcurve on empty parent, constraints on empty parent, then fcurve modifier on the camera.


solved it by limiting the influence of both constraints to 0.8


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.