さて、プレイヤー(宇宙船)が惑星の周りを回ろうとしているゲームがありますが、プレイヤーの宇宙船が惑星に近づくと、惑星に向けられます。
だから私は使用しようとしています:
float dx = [_player position].x - [planetNodes[i] position].x;
float dy = [_player position].y - [planetNodes[i] position].y;
double angleToTurn = (180.0 / M_PI) * atan2(dy, dx);
NSLog(@"Turn to: %f", angleToTurn);
_player.zRotation = angleToTurn;
このコードは、シーンの更新メソッドに入れられます。回転メソッドを使用しているため、プレイヤーが惑星に近づきすぎると、惑星が回転し始めます。setAngle のようなメソッドはありますか? そうすれば、更新が呼び出されるたびに角度がリセットされ、実際にプレーヤーが惑星に向かって移動しているように見えます。