2 つの球があるシーンをレンダリングしています。そのうちの 1 つを中心にカメラを回転させています。何が起こるかは直感に反します。カメラが球体の周りを回ると、後ろにあると予想されるときに、もう一方のカメラが球体の前に出ます。そのため、球体がお互いの周りを回転しておらず、回転する球体が常に前にあるように見えます。助けてください。
シーンをレンダリングするコードは次のとおりです。
glLoadIdentity();
[self positionCamera];
glutSolidSphere(2, 12,12);
glPushMatrix();
glTranslatef(5, 0, 0);
glutSolidSphere(0.5, 12,12);
glPopMatrix();
glFlush();
このブロックは、使用時に呼び出されるクラスの一部です。
[NSTimer scheduledTimerWithTimeInterval:DEFAULT_ANIMATION_INTERVAL
target:self
selector:@selector(drawRect)
userInfo:nil
repeats:YES];
と
-(void)positionCamera{}
カメラの回転を行う数学と gluLookAt() が含まれています