   rotation in local space
  Hi!I'am new to directx and game programmig.How rotate object in local space(model coordinate)?Thanks!   
  you create a matrix for the object , then apply all your transformation to it. after you are done, apply the transformation to the world matrix using IDirect3DDevice9::SetTransform Method , to decide where in the world the model is going to be drawn. repeat that procedure beforeevery model is rendered , so you can position each model freely.   ;  You'll also want to look into pushing and popping matrices onto and off of the matrix stack if you haven't already.Basically, when you 'push' a matrix onto the stack, you save the current world matrix (it should work for any matrix type: world, projection, but we'll stay with world for the moment), and then after you've drawn the current object with it's transformations, you can go back to the previous (the saved) one.For instance, if you wanted to draw a planet with several moons around it, you would set the transformations for the planet and draw it, then you'd call 'pushMatrix' (or whatever the equivalent is in direct X), then apply the transformations for the first moon, draw it, then call 'popMatrix' to go back to the transformation of the planet, ready to apply the transformations for and draw the second moon.If you didn't you'd end up trying to draw the second moon around the first moon instead of around the planet.I don't know the direct X functions for this, but you should be able to easily find them on a tutorial site or in a book.I hope this made sense.   