Spritekit でトップダウンの「レーサー」ゲームを作成しています。しかし、私はすでにゲームプレイの作成に行き詰まっています。常に一定の速度で走行している車を上から見下ろして制御します。プレイヤーは2つのボタンを押して、車を左右に回すことができます。速度は一定に保つ必要がありますが、車の zRotation は変更する必要があります。zRotation を変更することは問題ではありませんが、車の新しい速度を定義することは問題です。
私は現在ベクトルで作業しているので、プレーヤーが「turnLeft」ボタンを押すたびに、車の zRotation が 45 度で一定の速度 20 で変化すると、新しい速度は次のようになります。
player.physicsBody.velocity = CGVectorMake(14.14, 14.14);
45 度の sin と cos、および一定の速度 20 を与えるベクトルの合計を使用して与えられます (2 つの 45 度の角度と 20 の 1 辺を持つ三角形)。
ただし、プレーヤーが turnLeft ボタンを押すたびにこの変数を作成する方法と、アクションまたは更新機能を使用する必要があるかどうかはわかりません。プレーヤーが turnLeft ボタンを永遠に押し続けることを選択した場合、プレーヤーは円を描くことができるはずです。どんな助けでも大歓迎です!ありがとう。