Models and expressions made in Maya.
Procedurally animated gears using expressions:
buggy:mainCtrl.rotateY=(time)*buggy:mainCtrl.speed;
buggy:driveGear.rotateY=buggy:mainCtrl.rotateY;
buggy:tenGear1.rotateY=-buggy:driveGear.rotateY*12/10;
buggy:tenGear2.rotateY=-buggy:driveGear.rotateY*12/10;
buggy:tenGear3.rotateY=-buggy:driveGear.rotateY*12/10;
buggy:thirtyGear1.rotateY=-buggy:tenGear2.rotateY*10/30;
buggy:thirtyGear2.rotateY=-buggy:tenGear1.rotateY*10/30;
buggy:thirtyGear3.rotateY=-buggy:tenGear3.rotateY*10/30;
buggy:thirtyGear4.rotateY=-buggy:driveGear.rotateY*12/30;
buggy:twentyfourGear3.rotateY=-buggy:thirtyGear3.rotateY*30/24;
buggy:twentyfourGear2.rotateY=-buggy:thirtyGear1.rotateY*30/24;
buggy:twentyfourGear1.rotateY=-buggy:thirtyGear4.rotateY*30/24;
buggy:sixGear1.rotateY=-buggy:thirtyGear3.rotateY*30/6;
buggy:sixGear2.rotateY=-buggy:twentyfourGear3.rotateY*24/6;
buggy:sixGear5.rotateY=-buggy:thirtyGear4.rotateY*30/6;
buggy:sixGear4.rotateY=-buggy:twentyfourGear1.rotateY*24/6;
buggy:sixGear6.rotateY=-buggy:tenGear2.rotateY*10/6;
buggy:sixGear7.rotateY=-buggy:twentyfourGear2.rotateY*24/6;
buggy:sixGear3.rotateY=-buggy:thirtyGear2.rotateY*30/6;