>From a discussion in #Soya this morning, an awesome change was proposed:

We want to abstract out the behavior of the TravelingCamera into a 
seperate class so that:
  1) The camera's behavior can be changed cleanly
  2) Other things can be made to follow things
  3) Camera tricks (ie, multi-camera hacks/etc) can be implemented

Inheritence (ie, class TravelingCamera(soya.Camera, soya.Follower) 
wouldn't give us #1 - you can't undo inheritance cleanly.

Instead, the resulting proposal is that Follower be a soya.World with 
it's behavior added such that a camera (or anything else) can be put 
into it then re-parented as needed to change it's behavior.  This is 
similar to what we did with Aetherspace, creating a World class with 
following behavior and the cameras and 3d objects in the camera-space 
would be plopped into this.

Feedback requested.

_______________________________________________
Soya-user mailing list
[email protected]
https://mail.gna.org/listinfo/soya-user

Reply via email to