我正在为一个大学项目在 OpenGL 中创建一个 3d 太阳系,我已经到了必须生成卫星的地步。现在生成绕行星运行的卫星很简单,但我正在尝试创建一个循环,该循环将生成我告诉它的卫星数量,并且在行星周围的随机位置,因此所有卫星的轨道都是不同的。
for(int count = 0; count < 5; count ++)
{
glPushMatrix();
glEnable(GL_LIGHTING);
glTranslated (rand() % 8+8, 0.0, 0.0); //FIRST
glRotated((GLdouble) spin, 1.0, 70, 0.0);
glutSolidSphere(0.8, 20, 10);
glPopMatrix();
}
这是我想出的,但是它似乎一遍又一遍地创造了卫星。它创建了我指定的数量,但不断地重新创建它们。有人有什么想法吗?