3

私は SFML 1.6 ライブラリを使用していますが、知りたいです。

スプライトを回転させて、画面上のマウスの位置に常に向くようにするにはどうすればよいでしょうか?

ありがとう。

(SFML 固有のコードが推奨されます)

4

1 に答える 1

8

スプライトの位置がある場合:S =(Sx、Sy)およびカーソルの位置C =(Cx、Cy)

ここに画像の説明を入力してくださいベクトル=(Cx-Sx、Cy-Sy)と単位ベクトルの間の角度を計算できます(例ここに画像の説明を入力してください:=(1、0、0))。

角度を計算するには、外積を使用できます。

ここに画像の説明を入力してください

その後 :

ここに画像の説明を入力してください

次に、角度を計算します。

ここに画像の説明を入力してください

最後に、スプライトを回転させます。

Sprite.SetRotation(alpha); //alpha in degree
于 2011-02-01T09:09:25.060 に答える