回転した二つの矩形の衝突検出が出来ました
回転した2つの矩形の衝突検出プログラムが完成しました。
最初はエラーが出まくり大変でした。
矩形を線分に分解してその線分が交差するかで衝突検出しました。
アルゴリズム的には直線と頂点の位置関係を見て1つの頂点が
上にいて1つの頂点が下にいる場合などは交差する考え方です。
同じ側にいる場合は交差しません。違う側にいるときは交差します。
最初、例題のサンプルソースをよく見ていなかったので頂点を2回
チェックしているのでそれで2つの線分の衝突検出がわかると
思っていたのですがただ2つの頂点の状態を見ているだけなので
直線と線分しか見ていませんでした。だから線分同士のチェックに
する場合、今まで直線としてとらえていたものを線分として
扱い線分として扱っていたのものを直線にして再度チェックしないと
線分同士の衝突判定にはならないとわかりました。
それがわかり結果は良くなりました。
今度は2つの矩形の4つの線分同士の衝突検出をしました。
頂点の名前が間違っていないか念入りにチェックしました。
実行するときちんと衝突検出されているのがわかりましたが
たまに衝突検出しないことがありなにか数式が間違っているのかなと
何度も確認しました。異常はないようなのですが衝突検出しないことが
あります。これはもしかすると衝突検出ライブラリの問題ではなく
メイン関数の中にバグがあるかもしれないと思い見てみました。
沢山の矩形の衝突検出しているループの設定にトータル矩形の数を
示している設定が1引かれているのに気が付きました。
その1引かれているのを消して実行したら異常はなくなりました。
1つ衝突検出から逃れていたので衝突検出しなかったようです。
あと表示ライブラリの矩形の表現はx座標 y座標 幅 高さ 角度
で示すのですが線分に変換する処理も入れました。
できたら嬉しくて仕方なくなって心が満たされている中
衝突検出させて遊びました。
これからのビジョンは矩形がたくさん作れるようになったので
表示と衝突検出は分けマルチタスクシステムを導入しようと
考えています。そのためのデータ構造や配列の追加のさせ方も
末尾や最初や途中に入れる方法も学びました。
あと表示に関しても表示の優先順位を決める方法を模索しています。
今だと登録した順になってしまっているので優先順位を決められるように
したいです。
ゲームのルールは自分の攻撃ヒットを相手のやられヒットにぶつけ
自分のやられヒットは相手の攻撃ヒットを当たらないようにすると
いうシンプルなものです。マウスでクリックすると
その方向にプレイヤーが向きを変え移動するという物を
計画しています。ボタン操作はなくマウスの動きで
色々なアクションが出来るようにしようと思います。
プログラムの情熱はかなり高まっています。
プログラムは楽しいです。
後ニコ生でクリスマス放送をしました。
かなり盛り上がってリスナーと楽しい時間を過ごせました。
今日も楽しかったなー!

- 関連記事
-
- かなり放送しました
- テレビも捨てたもんじゃないと思いました
- 回転した二つの矩形の衝突検出が出来ました
- プログラムに没頭していました
- 散歩配信をしました
スポンサーサイト
- 未分類
- / trackback:0
- / comment:0
- [ edit ]
comment
プロフィール
Author:dayondayo2000
日常生活であったことを日記形式で語っています。.:♪*:・'(*⌒―⌒*))) スペシャルスマイル
最新記事
最新コメント
最新トラックバック
月別アーカイブ
- 2021/01 (23)
- 2020/12 (28)
- 2020/11 (27)
- 2020/10 (32)
- 2020/09 (25)
- 2020/08 (31)
- 2020/07 (29)
- 2020/06 (26)
- 2020/05 (28)
- 2020/04 (28)
- 2020/03 (30)
- 2020/02 (30)
- 2020/01 (29)
- 2019/12 (33)
- 2019/11 (31)
- 2019/10 (31)
- 2019/09 (30)
- 2019/08 (30)
- 2019/07 (31)
- 2019/06 (31)
- 2019/05 (31)
- 2019/04 (30)
- 2019/03 (30)
- 2019/02 (27)
- 2019/01 (31)
- 2018/12 (33)
- 2018/11 (31)
- 2018/10 (31)
- 2018/09 (29)
- 2018/08 (30)
- 2018/07 (31)
- 2018/06 (31)
- 2018/05 (26)
- 2018/04 (26)
- 2018/03 (28)
- 2018/02 (28)
- 2018/01 (29)
- 2017/12 (31)
- 2017/11 (28)
- 2017/10 (30)
- 2017/09 (25)
- 2017/08 (31)
- 2017/07 (31)
- 2017/06 (30)
- 2017/05 (31)
- 2017/04 (29)
- 2017/03 (31)
- 2017/02 (28)
- 2017/01 (30)
- 2016/12 (33)
- 2016/11 (33)
- 2016/10 (32)
- 2016/09 (30)
- 2016/08 (31)
- 2016/07 (26)
- 2016/06 (19)
- 2016/05 (21)
- 2015/02 (1)
- 2014/12 (1)
- 2014/11 (2)
- 2013/04 (1)
- 2013/03 (4)
- 2013/02 (1)
カテゴリ
スポンサーリンク
アクセスカウンター