ah ok, ya entendi. Lo que pasa es que tendrias que crear una variable mas para la rotacion de la luna sobre la tierra.
Podrias hacer algo asi para la rotacion de la luna alrededor de la tierra:
Código PHP:
static float fMoonRot = 0.0f;
static float fEarthRot = 0.0f;
glPushMatrix();
glRotatef(fEarthRot, 0.0f, 1.0f, 0.0f);
// La tierra
glColor3ub(0,0,255);
glTranslatef(105.0f,0.0f,0.0f);
glutSolidSphere(15.0f, 30, 17);
// Rotar a la luna con respecto a la tierra
glColor3ub(200,200,200);
glRotatef(fMoonRot,0.0f, 1.0f, 0.0f);
glTranslatef(30.0f, 0.0f, 0.0f);
fMoonRot+= 15.0f;
if(fMoonRot > 360.0f)
fMoonRot = 0.0f;
glutSolidSphere(6.0f, 30, 17);
glPopMatrix();
No cheque si el codigo funciona a la perfeccion, ya que ni lo probe, pero ahi esta la idea.......
Si ya tienes de la tierra sobre el sol, la de la luna es el mismo principio.....