Z 軸に沿って複数の立方体を移動する関数を作成しました。すべてのキューブを一度に移動して繰り返すことができますが、個々のキューブを互いに独立して移動させようとしています。私のz軸関数は次のとおりです。
void moveCubes()
{
cubeZ += 0.050f;
if(cubeZ > 120)
cubeZ -= 110.0f;
glutPostRedisplay();
}
表示関数は次のとおりです。
void myDisplay()
{
glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
glClear(GL_COLOR_BUFFER_BIT);
for(int i = 0; i < maxCubes; i++)
{
glLoadIdentity();
glTranslatef(0.0f, 0.0f, -110);
glTranslatef(cubeOrigins[i].x, cubeOrigins[i].y, cubeZ);
glRotatef(rotateAxis, cubeOrigins[i].rotateX, cubeOrigins[i].rotateY, 0.0f);
drawCubes();
}
moveCubes();
glutSwapBuffers();
}
cubeZ は私のコードの先頭で定義されており、次のとおりです。
GLfloat cubeZ = 0.0;
cubeOrigins[i].x と .y は生成された rands() です。必要に応じてコードを追加できますが、これが重要な部分だと思います。誰かが私に何をする必要があるかを教えてくれることを願っています。率直に言って、かなりイライラしています。助けていただければ幸いです。