スプライトをマウスの向きに設定


9

私はhtml5キャンバスゲームを構築しています。スプライトをマウスカーソルに向ける方法が必要です。スプライトのX座標とY座標、およびポインタのX座標とY座標があります。私が行き詰まっているのは、スプライトをポインターに向けるのに必要な数学だけです。それはすべて2Dの世界にあるので、あまりにも複雑になるとは思えませんが、私はこれについてはほとんど経験がありません。

また、この種のことについての記事/ブログ投稿への役立つリンクは素晴らしいです(特に2Dゲームプログラミング、特にJavaScriptではありません)。

追加するには、X位置とY位置を使用してカーソルに向かって自分を指す角度が必要であることに注意してください。

カーソルの座標を知るにはどうすればよいですか?


こんにちは、私はアーチェリーに関してあなたと同じような問題を抱えていました。必要に応じて、私のブログをチェックしてください:yannbane.blogspot.com
jcora

回答:


11

自由に使えるAPIがわからない場合、角度を度単位で取得するための基本的な計算を次に示します。

angle = math.atan2(y2 - y1, x2 - x1) * 180 / math.pi;

* 180 / math.pi;ラジアンから度に変換します。


3
によって生成される角度atan2は、座標系が+ x rightおよび+ y upであると想定していることに注意してください。あなたのものがダウンした場合は、角度を無効にする必要があります。また、角度が0の場合、オブジェクトは(1、0)方向(右)を向いていると想定しています。別の方向を向いている場合は、角度をオフセットする必要があります。ここでの私の答えは、その方法を説明しています。
Nicol Bolas
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.