Thanks for your comments. OB changed some of the script in the demo, so it isn't exactly the same, try both of them to see a difference. Thanks for posting a demo OB. The collision only uses one trace and pans when the trace is interrupted. I did that for compact code reasons (and less traces used the better), but if you use the concept behind the Zelda cam I posted before, you can get a normal 3rd person cam working which moves smoothly. The camera moving quickly and making you dizzy works well when the player turns a corner, this effect will be different with the above code instead of the demo as OB has turned off the camera panning when the player presses A or D in the demo.

The camera has coordinates at which it smoothly moves to. You can add this at the end of the camera function to remove the smooth movement and allow the camera to lock dead center on the player (but that's like making a Zelda cam all over again :P )

camera.x = camera_move_to.x;
camera.y = camera_move_to.y;
camera.z = camera_move_to.z;
camera.pan = camera_pan_to;
camera.tilt = camera_tilt_to;