Major changes to everything. First, I tried to break up the existing camera code into reusable functions. That only got me so far.
A new flowgraph has been added which will provide an orbit camera. Future nodes will provide implementations of the other camera types. Each will contain only the exact logic needed for that one camera type. Logic is moving out of the flowgraph and instead will be provided by existing flowgraph nodes.
Camera can now attach to bones without needing special code. Debugging is being added. Code is being commented and simplified.
Added view rotation which always centres the target position.
Looking into interpolation.
Broke one of the view transforms while moving the zoom management off the flowgraph node. Added IGameObjectView to inheritance - may need to check if that broke it.
Simple fix. I normalised the vector pointing at the player before getting a rotation quat.
Noted the cause of the asserts when zooming in close.
Minor tweaks.
More minor tweaks.
Inital work on interpolation of the camera moves.
Initial work on yaw and pitch.
Formatting issue from moving repo to new drive.
Added ability to select vector other than -Y * distance for camera position. Needs some work for values on the z axis.
First stab at adding pitch and yaw from the mouse.
Clean ups, getting ready to add pitch + yaw
Pitch and yaw added. Basic camera rotation not correct yet, it's off axis, plus still an issue with -180/+180 degrees.
Yaw and pitch are ok, but we need to be able to turn yaw off, pause the player turning, or orient the player to the new view orientation.
Getting some basic modes for pitch and yaw on mouse moves.
Not working yet. Still having fun with the rotations.
Moved unity vector to the z axis.
Adding panning, and mouselook control.