ツイッター

【プログラマー】「壁への衝突判定が難しい」

ゲームで
「壁をすり抜けるバグどうなってんだ!?」
みたいに言われがちですけども、プログラミングやると
「すり抜けない衝突判定、どうやってんだ!?」
ってなりますからね
🤔
@AB8xcQWUk41zCXO @nagise Twitterを体現していて好きです。
@nagise そもそも壁じゃないものをテクスチャとプログラムで壁と言い張ってるだけだからねぇ
@AB8xcQWUk41zCXO @nagise そういう話をしてるんじゃないんだよなぁ
@nagise フレームにもよるけど高速物体は薄い壁抜けることあるから…
普通にめんどいよねぇ…
微道に治すしか…
@nagise なるほど
壁のテクスチャを作ってもテクスチャだけだから、ちゃん「壁」としてのプログラムもぶち込まないとダメなのか
@nagise としょ子さんのおもちゃにされる
@nagise ユーチューブでとしょ子さんという方がむちゃくちゃ壁抜け実証する動画上げてますね、やっぱり完璧って難しいんだなぁ…
@nagise わかる…
blenderで少し3Dモデルをいじっている程度だけれど、衝突表現するかもしれない状況なので実験中…
マンガ的表現のオブジェクト重ねて見えなくさせて誤魔化さないとかなり難しい…
@nagise としょ子兄貴やシモエル兄貴のようなスーパーデバッカー動画見てるとプログラマーの苦労が伝わります…
@nagise カービィってすごいんだな・・・(突進してぶつかってるイメージしかない)
@nagise ポケモンダイパの「なぞのばしょ」も思い出した。
実際どう言うプログラミングになってたのが未だに気になるけど。
@nagise 確かにそういえば、そうだわ。学校の授業でやったわ。
@nagise ゼルダでどれだけ盾サーフィン壁抜けを練習したことか…
@nagise あまりにしっかり作ると処理が重くなるし難しいよな
@nagise 衝突判定、メチャクチャ面倒くさい…
@nagise マガポケで読める
「この世界は不完全過ぎる」
を思い出しますね。

フルダイブ系ゲームの中でデバッグ作業中にログアウト出来なくなったデバッガー達のお話。

衝突判定の穴を探すために壁に体をぶつけながら走り回ってました。
地味ながらも面白い作品。
@nagise 昔はドットで考えればよかったので、
・壁の移動速度が1ドット
・自分の移動速度が1ドット
だから、壁を2ドットにすれば当たり判定にミスはない!!

ってやったら、方向の概念がなかったので、より高速ですり抜けるようになった。
正解は移動方向を考えたくなければ、壁は4ドット以上必要!!

コメント一覧

  1. 匿名 より:

    3Dモデルの頂点ごとにコリジョン判定すると計算量が多すぎるんだよ。だからおおざっぱに、モデル中心からの距離とかで判定する、スプライト時代から変わらん手法。
    最近のゲームエンジンじゃ物理演算で細かく計算してるもんもあるだろ、ただパフォーマンスとの折り合いになるから壁に少々埋まるくらい許容して他の演出用にハードリソース使った方が良いだろとなる。

  2. 匿名 より:

    見えない壁はすり抜けられないのに

コメント

メールアドレスが公開されることはありません。 が付いている欄は必須項目です