   Scale parts of model
  I'm currently working with an excavator which I have drawn in 3ds and converted to a xfile. The model consists of 4 parts -body, boom, arm and bucket, each with a bone attached to it. I've managed to load it, display it and manipulate it with the keyboard.My problem is that I want to scale the individual parts of the body on user input. Lets say the user wants an excavator with a 15 meter boom I want to be able to change the size of the boom so it looks right on screen. This can be done when I load the xfile or after, but ideally I only want to scale once to save resources. Does anyone have a recipie on what I should do to manage this feat?   
  I have not worked with meshes much, but based on what i've read, you *should* be able to change the world scaling transformation prior to rendering each subset of the mesh.   ;  I think so too, but I have problems getting it to work. I'm really not sure which matrices I'm supposed to scale, and everything I try just leaves the machine with parts spread all over. Anyone got any ideas?   ;  Have a look in your DCC package's manual - it'll tell you what order the various matrices should be applied (scale, rotate, translate).  It's been a while since I wrote an animation system but if I remember correctly the simple case is:Scale * Rotate * Translate(Normally you have other matrices in there too, such as various pivots and bone orientation - but it depends upon how complex your system is.)So we scale the geometry along the default coordinate axis before rotating to our new position and then translating to the eventual location.Note that if you don't want the scale to effect subsequent pieces of the hierarchy then you have to multiply in the inverse scale matrix as the first step of the next matrix concatenation step:ScaleInverse * Scale * Rotate * TranslateHope that helps.   ;  That worked great. All I had to do was to scale the bones before rotating. Thanks a lot for the help!   