忍者ブログ
カレンダー
10 2024/11 12
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
プロフィール
HN:
[-_-;] (みかん)
性別:
男性
趣味:
プログラミング、XOPS
自己紹介:
中部地方在住です。
最新コメント
[11/30 NONAME]
[11/22 NONAME]
[09/24 NONAME]
[06/10 NONAME]
[01/29 NONAME]
XOPS関連サイト「みかん箱」の運営や、OpenXOPSの開発などを行う[-_-;](みかん)のブログ。近状報告や独り言などを書きます。
Prev Month123456789101112131415161718192021222324252627282930Next Month
弾の当たり判定を作り直したい
ここ数日は学業忙しくて、OpenXOPSに関する大掛かりな作業は
できませんでした。
もうちょっとすると学業の一件は終わるのですが、それら以外にも
片付けなくてはいけないことがあるので、あまり「暇」というわけでは
ないです。


OpenXOPSの開発ですが、手榴弾が爆発した際のダメージ判定と
計算部分を作り直していました。(コミット済み)

今まで、人と小物へのダメージ判定と計算を、humanクラスとsmall
objectクラスで個別に行っていましたが、今回の改良でObjectManager
クラスに判定と計算を集約しました。
また、処理を関数化することで、ObjectManagerクラスのProcess()
関数の可読性の向上を狙っています。
これで、手榴弾の爆発時の処理が銃弾の処理に近くなり、当初より
マシになっていると思います。

今後は、弾の当たり判定を作り直したいです。
ObjectManagerクラスのCollideBullet()関数がとんでもない状態に
なっているので、手を打ちたいとは思っています。
マップとの当たり判定は良さそうですが、人と小物との当たり判定
が本家と違うようなので、解析し直さなくてはいけませんね。


後は、人とマップとの当たり判定をなんとかしたり、人とカメラの制御
を改善したり、バイナリ版用に正規の説明書を作ったり。

以下報告ですが、Doxygenの使い方を解説することにしました。
設定ファイルも公式リリースです。詳細は公式サイトをご覧ください。
category : ソフト・ツール開発 comment [1]
PR
COMMENTS
【本文以外は任意項目です】
SUBJECT(タイトル)
NAME(お名前)
MAIL(メールアドレス)
HOME(サイトURL)
COMMENT(本文)
PASS(削除パスワード)
Secret?(管理者へのみ表示)

※スパム防止のため「Hello!」「website」「ブランド」「みかんの戦闘ブログ」
「http」などの一部キーワードを禁止しています。ご了承ください。

バグ報告 2015.02.16 Mon 23:17 EDIT
 弾に関して、貫通力のある弾丸が同じ物体対して複数回当たり判定が計算され、威力が過剰になっているようです。対策法として、弾ごとに前回当たった物体の番号を記憶し、前回と同じ物体に対して当たり判定を行わないようにすると良いと思います。
 また、他にも水面などに使われる厚み0のブロックに対して、うまく当たり判定が動いていないようです。水面などに乗った際、前後左右の移動ができず、埋まったような状態になってます。
from NONAME
報告ありがとうございます。

>弾に関して、威力が過剰になっているようです。
申し訳ないですが、問題自体は既に把握しています。
公開中の「デモH」に入っている 本家XOPSとの相違点.txt の『貫通力が高い武器での人への攻撃力計算がおかしい』が該当します。記述では人に限定していますが、小物もダメみたいです。
ご提案して頂いたアルゴリズムも既に検討していますが、全ての弾丸に対して全てのオブジェクトの衝突状況を記録するのは、計算速度とメモリー容量が大き過ぎる気がします。(未確認)
とは言いつつも一方で、他に良さそうな計算方法もなさそうです。
そもそも記事に書いた通り、弾の当たり判定自体を全面的に作り直すつもりですので、そのタイミングで不具合の解消を狙っています。

>水面などに乗った際、前後左右の移動ができず、埋まったような状態になってます。
厚み0のブロックの当たり判定がおかしいことは認識していますが、ご指摘の問題は初耳です。
近いうちに確認してみます。

他にも何かありましたら、遠慮なくご指摘の上、名案があればご提案ください。
from MASTER 2015.02.17 Tue 01:17

※過去のブログ記事は 原則として編集・修正していません。
 各記事の内容は投稿時のものであり、現在では異なる場合があります。
 最新の情報は、関係する内容について書かれた 最新の記事をご覧ください。

TOP