読者です 読者をやめる 読者になる 読者になる

妹でもわかるUnrealEngine4

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

毎日更新? 妹に説明するために書いてるけど、たまにわかってない場合もあるUnrealEngine4を中心としたゲーム制作の話。略すとイモリアル

下からジャンプで通り抜けられる足場・その1

妹「アクションゲームだと、足場ってのは下からは通りぬけられて、上からだと着地出来る感じになってると思うんだけど、これはどうやって作ったら良いんだろうか」

「こういう感じの足場かな」

f:id:una_unagi:20160104214223p:plain

妹「そんなやつ。コリジョンで考えると、下から行く時はオーバーラップで、上からはブロックで移動の方向によって違う感じがするけど、動きには斜めとかもあるからよくわからなくて……」

「考え方としては一方通行のコリジョンということになる。ただそういう設定があるわけじゃないから、必要に応じてブループリントから切り替える必要がある。参考になりそうなのは、棒人間のアクションサンプル」

imoue.hatenablog.com

「これでブロックを壊す時に、ブロック本体とは別に、ブロックの下側にコリジョンがあって、そこに接触した場合だけブロックが壊れる仕組み。これを応用して、ブロックを壊すんじゃなく、自機のコリジョンを通りぬけ可能な物に変更すれば、一方通行の仕組みが作れる」

f:id:una_unagi:20160104214551p:plain

「どういう時に通れて、どういう時に通れちゃ駄目なのかを、ざっと図に書き込んでみた。青ルートで通った時に先に接触して、赤ルートの時には接触しないようなコリジョンを、すり抜け判定用に作ればいい」

f:id:una_unagi:20160104215343p:plain

「まあだいたいこんな感じになると思う。逆に足場デフォルトをOverlapにして、判定用コリジョンに接触した時だけBlockしてもいい。その方が端っこの判定で通りぬけやすくなりそう。あとその判定をそのまま下に降りる判定に流用出来る。下押しっぱなしで足場から降りるみたいな」

妹「降りる機能は要らないんだけど、この図だと下から抜けた後にちょっと足場に当たっちゃいそうな気がする。微妙に出た部分があるから」

「たしかに……上側はピッタリ揃ってないと駄目かも。判定コリジョンの方が大きいと上からも接触して落ちちゃうし。やっぱり上側に判定コリジョン置いた方が安定しそう。敵キャラの扱いとかもあるから、そのへんは作りながら調整する感じで」