2012年 03月 29日
つづき。何の事か判らない方は前の記事を先にご覧ください。 前回は「敵座標指定弾では、弾の移動速度X,Yは自座標から敵座標への角度によって変動」 することについて解説しました。 QKさんに頂いた画像と前回の解説画像をもとに、新たに書き起こしたのがこちら。 今回は実際にこれを求める方法を模索していきたいと思います。 三角関数と逆三角関数を使います。 はい。げろが出そうですね。この単語でイラっとする人は非常に多いかと思われます。 この三角関数および逆三角関数ですが、実はこういったことを求めるのに非常に適しています。 MUGEN上でもそのまま使用できますので、いちいち計算する必要なく、 適当な公式を置いておくだけで単純な敵座標指定弾は完成してしまいます。 何を使えばいいのか理解さえ出来ればあとは勝手に計算機(MUGEN)がやってくれる。 非常に良い時代になりましたね。 じゃ、何を使うのか見ていきましょう。 1 まず角度が判らなくては話にならないので、これを求めたいところですね。 そのためには自分の座標と相手の座標、そしてその差がどのくらいあるかが必要不可欠です。 基本的にMUGEN上での自座標は0,0ですね。ローカル座標などといわれるものです。 そしてMUGENには相手座標までの距離を直接取得出来る命令が標準で搭載されています。 自座標から相対で値を出してくれますので、これらを用いることで 相手の座標、および自座標との差 が得られます。 なんといちいち計算しなくていいんです。すごく便利ですね!ここに書くことなんかないよ! 2 んで、自分の座標と相手の座標の差が判ったので、弾の角度rを求めることが出来ますね。 実際の求め方ですが・・・逆三角関数を使いましょう。 図をちら見してください。現在判っている情報は自座標(0,0)、任意の弾速s、敵座標(までの距離)x,yです。 逆三角関数には、自座標x,yと敵座標x,yが判っていれば ダイレクトにその角度を求めだすとってもお買い得な計算式があります。 それがatan2(敵x,敵y)です。 atan2もMUGEN上で普通に使えるので、(1)で調べた「敵座標を取得」する命令を代入してやれば ここはそれだけで完成です。仕組みが知りたい方は本屋さんで数学の参考書を探しましょう。 追記:大ウソでした。 確認したところ、MUGENにatan2は実装されておりません。 ここは実装されているatanを使って、以下の手法を取りましょう。 atan(敵y / 敵x) atanの性質上、正面方向(真正面を0度として、-90度~+90度)の範囲に限られますが、 これにより角度を算出可能です。 補足になりますが、(2)で使用したatanでは正面方向のみの算出なので 角度の計算時に相手が後ろ、負の方向に行ってしまった場合は計算できません。 この処理にはMUGEN上で相手が後ろに回ったら(発射元となるキャラやヘルパーを)振り向かせる、 あるいはifelseを使い、相手の位置にあわせて弾速Xに-1をかけるなどの工夫が必要となります。 3 そして角度が求められたら、その角度と自分が指定する任意の弾速sから、 補正後の弾の速度X、Yを求めることが出来るようになります。 ここでもXとYでそれぞれ一回ずつ三角関数を使えば、直接求めることが出来ます。仕組みはry 弾速Xを求めるには、弾速s * Cos角度r 弾速Yを求めるには、弾速s * Sin角度r です。MUGEN上でこのまま使えるのでry ここまでの情報をまとめると下記図が出来あがります。 さてさてこの後は何をしたらいいんでしょうか。 欲しかったのは弾速X、Yで、計算式は判りました。 計算はMUGENが勝手にやってくれます。 ・・・おや。完成ですね。 ほらね?簡単だったでしょう? まとめ おつかれさまでした∩(・ω・)∩ばんじゃーい #
by goukasoshina
| 2012-03-29 16:07
| 最速のmugen
2012年 03月 29日
QKさんと飛び道具についてアレコレしたときに作ったものをおすそ分けします。 お題:敵座標参照弾について。 シューティングゲームなどでよく見ますが、 ホーミングではなく、弾が発生した時点での自機座標に向かってまっすぐ飛んでくる弾、よくありますよね。 いわゆる自機狙い弾です。 今回はこの自座標x、yから、敵座標x、yに向かって弾速sで飛ぶ弾を作るうえで必要なものは何かを明確にしていきます。 #表題になってますが、MUGENは基本的に格ゲーなので、ここでは便宜上「敵座標参照弾」とします。 #性質上、数学の話になりますが、MUGEN上で作る際に必要な情報に絞っていますので頑張ってくださいねほしみ。 まずこちら、QKさんから頂戴した画像です。 左上の鋭角を持つ点が自座標(発射点)、角cが敵(目標座標)との角度差、 右下が取得した敵座標に対し1フレーム経過時の弾の到達点。 そして辺AとBはそれぞれ、1f経過時の弾のX、Y方向への移動量を表しています。 斜辺は弾を飛ばしたい直接の方向です。 さて、MUGEN上(に限りませんが)では単純な速度と角度を指定できないため、 弾の移動速度にX、およびYの2種の移動量を指定することで目的の方向に飛ばさなければいけません。 では、例えば敵座標が1,1であるとき、速度1で1フレーム飛んだ弾の実際のX座標、Y座標はいくつでしょうか。 X=1、Y=1? 図にしてみましょう。 発射位置から速度1の距離に円を描くと、このようになります。以下じゃなくて未満だけどね。 先ほどの例だと、1fの間、X=1,Y=1で弾を飛ばした際の座標は 実際の位置を大きく飛び越えてしまっています。 真横や真上に飛ぶよりずっと早く飛んでることになってしまいますね。 これが斜めに移動する物体を作る時に最も重要なポイントです。 まとめ 敵座標指定弾では、弾の移動速度X,Yは自座標から敵座標への角度によって変動します。 つづきます。 #
by goukasoshina
| 2012-03-29 15:16
| 最速のmugen
2012年 03月 29日
私はまだHRすらカンストしてないド底辺プレイヤーなんですが、 一緒に始めたうちの人(当時MH暦0時間、アクション下手、ファンゴに3乙)が フル秘伝 しかも SRカンスト ついていけないですだわよ(´・∀・`) #
by goukasoshina
| 2012-03-29 14:19
| 最速のゲーム事情
2012年 02月 21日
その後。 土日にも関わらずハンゲサポートからメールにて返答があり、 ログイン情報等を精査した結果、アカウントハックが疑われる、とのこと。 メールアドレスも変更されているため、個人情報の照合を条件にこちらの指定するアドレスへ変更、 ハンゲ側から仮パスワードを発行しこのアドレスへ送付。 その後に私からハンゲサイトでパスの再設定等を行うということで、 わずか2日間でスピード解決しました。お騒がせしましたてへぺろ。 原因はキーロガーで、こないだ落としたAEのフリープラグインが真っ赤な偽物だったようです。 たまにはウィルススキャンかけないとやっぱりまずいですね。あとFW。 被害状況ですが、ゴブパを突破出来ず自動で行われた1日限定の取引制限を確認。 その他で装備、消耗品等一切の損害が出ていないわけで、 ゴブパwwwwwwwwwとか言ってた私はもうゴブリンに足を向けて眠れなくなりました。 まぁ、 かすたどんが何者かに頭に壺を被せられる事件が発生していたのが被害といえば被害なのですが。 ふむ・・・実はこの時期に前後してメッセに頻繁にログインしていた壺さんが最近姿を見せないんですよね。 まさか・・・ あ、ちなみにこのエレノアなんですが、 #
by goukasoshina
| 2012-02-21 01:31
| 最速のゲーム事情
2012年 02月 05日
昨日23時時点でログインできた私のアカウント、本日7時時点でログインできないことを確認しました。 登録しているハンゲームIDをメールアドレス単位で通知してくれるID通知サービスには載っておらず、 またパスワード喪失フォームからはメールアドレス不一致により再発行が不可能となっています。 ハンゲームサポートより問い合わせ中ですが、 下記キャラクターがログインしているところを見た人はご一報ください。 すべてカインサーバー 構成のワタナベ:Lv70ヘルベンター Cast:Lv70ヘルベンター 勇者Oh:Lv70男グラップラー 豪華粗品:Lv56メカ 他 真冬のハゲナベ T-72神 地球救済センタ 梅干ちゃん 等 よろしくお願いいたします。 くくく・・・奴らこそは四天王の中でも最強・・・最強・・・(´;ω;`)ぶわっ 死ぬ気で集めたF券とか黄金書とか知人からお借りしてるアバとかどうなっちゃうんだよ・・・ #
by goukasoshina
| 2012-02-05 09:36
| 最速のゲーム事情
|
アバウト
カレンダー
カテゴリ
以前の記事
最新のトラックバック
その他のジャンル
ファン
記事ランキング
ブログジャンル
画像一覧
|
ファン申請 |
||