角度の求め方【解決】

かになべ
記事: 17
登録日時: 2018年12月23日(日) 13:30

角度の求め方【解決】

投稿記事by かになべ » 2020年2月08日(土) 00:15

素人質問で申し訳ありません
現在、プレイヤーの画面X,Yを基準として特定座標の角度を取得するイベントを作ろうとしているのですが、どうにもうまくいきません。
プレイヤーを原点として特定座標X,Yが原点からプラスの所にあるのかマイナスの所にあるのかといった所まではいけたのですが、ここから角度をどう取得すればいいのかが分からないのです
イメージ画像
画像
地形で描かれた1とか2は象限で、単位はピクセルです
現在はコモンイベントでやろうと思っていますが、手詰まりになってしまいました
回答お願いいたします
最後に編集したユーザー かになべ on 2020年3月15日(日) 04:46 [ 編集 1 回目 ]

RPGツクールで仲間と進むアクションをツクっていきます
アバター
しぐれん
記事: 973
登録日時: 2017年3月28日(火) 22:22
連絡を取る:

Re: 角度の求め方

投稿記事by しぐれん » 2020年2月08日(土) 01:40

ベクトルと三角関数の話になりますね。
角度を求めて何をするのが目的でしょうか?
使い方次第では角度を求める必要はない可能性があります。
現在、プラグイン依頼はお休み中です。
かになべ
記事: 17
登録日時: 2018年12月23日(日) 13:30

Re: 角度の求め方

投稿記事by かになべ » 2020年2月08日(土) 11:04

自分が今やろうとしているのはひもひ記氏の「シューティングプラグイン」ですね
このプラグインでは、イベントからアクターの角度は自動計算してくれるのですが、アクターから特定の座標に弾を飛ばす術がありませんでした
そのため、自分で角度を算出してみようと思ったのです
RPGツクールで仲間と進むアクションをツクっていきます
アバター
しぐれん
記事: 973
登録日時: 2017年3月28日(火) 22:22
連絡を取る:

Re: 角度の求め方

投稿記事by しぐれん » 2020年2月08日(土) 16:41

その場合、角度指定よりベクトルで計算した方が速いですね。
目標座標-アクターの座標で計算できます。
ゲームプログラミングの基礎中の基礎の話なので、「シューティングゲーム ベクトル」で検索すれば情報を見つけられます。
現在、プラグイン依頼はお休み中です。
かになべ
記事: 17
登録日時: 2018年12月23日(日) 13:30

Re: 角度の求め方

投稿記事by かになべ » 2020年2月09日(日) 02:34

申し訳ありません、言い忘れていたのですが、自分の使っているプラグインでは角度を直接入力して弾を撃つ角度を決める方式になっているのです。
おそらくですが、ベクトル方式ではうまく作動しないものと思われます。
申し訳ありません
RPGツクールで仲間と進むアクションをツクっていきます
アバター
WTR
記事: 559
登録日時: 2015年12月22日(火) 19:14

Re: 角度の求め方

投稿記事by WTR » 2020年2月09日(日) 17:22

degreeで与えればいいのかな

degree、つまり30度とか90度とか、フツーに言う角度であれば
添付中のθは逆正接を使って以下のように求まります。
θ = Math.atan(Y/X) * 180/Math.PI

第1象限であれば 90 - θ が求める角度になるでしょうか。
第2~4象限においては X, Y を符号付で取得してるかどうか、とかで微妙に実現方法が異なるかと思いますが
目標がどの象限にいるか判断できているということなのでどうにか条件分岐を作れるでしょう。

と思ったけど余談
Math.atan2() っていうのもあるのかぁ

あと、そもそもそのプラグインでキャラクターの方向の角度が取得してるなら
それと同義ではないかという気もする。

どう実装してるのかわかりませんが…
添付ファイル
pic.png
Twitter、はじめました。
https://twitter.com/wtr_in_reverie/
かになべ
記事: 17
登録日時: 2018年12月23日(日) 13:30

Re: 角度の求め方

投稿記事by かになべ » 2020年2月12日(水) 10:40

WTR様
しぐれん様
今回お二人の助力により、なんとか角度を求めるイベントを作ることが出来ました
ありがとうございました
RPGツクールで仲間と進むアクションをツクっていきます

“MV:質問” へ戻る