妹でもわかるUnrealEngine4

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

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

ボンヂャーラビット強制射出事件(捜査編)

「まず昨日気になった、端っこ以外の場所でターンしてるところから調べてみようと思ったんだけど……」

f:id:una_unagi:20151118003450p:plain

「"この辺はどうにかしたい"って、どういうこと?」

妹「どういうことだと言われても、どうにかしたいなあと思ったんだよ」

「イベントティックからOnComponentBeginOverlapの結果を拾ってるけど、イベントが発生してないタイミングでGETされてることになるわけで、これどうなってるんだろう? 直前に発生したイベントの結果を保持してるのかな?」

妹「だからそのへんがよくわからないからどうにかしたいんだよ。でも動いてるからまあいいかと」

「何もないとこで反転してるのはここが原因のような気がするなあ……。とりあえずここがどういう変数を返しているのか、イベントティックが起きるたびにPrintStringで表示させるようにしてみる」

f:id:una_unagi:20151118003818p:plain

「この状態でぶっとんでいくまでやると、ぶっとぶ瞬間にこういうエラーメッセージが記録されてることがわかった」

妹「地面じゃなくて、えび天のこと調べてる?」

「えび天になってるね。そして足元に地面はあるけど、基準がえび天で、えび天がないから逆向いちゃってる。そこもだけど、その上もに気になる。"~ is stuck and faild to move!"ってなんだろう?」

妹「動くのに失敗しました?」

「うーん、でも単純に進行方向をふさいだだけだとこういうエラーは出ないんだよ。別の物体が中にめりこんでるとか、そういう話じゃないかな、多分」

f:id:una_unagi:20151118004259p:plain

「えび天を手に持った状態で接近すると、その持ったえび天に反応するね。やっぱり吹っ飛んでいくときに、えび天がラビットの近くに出現してるのは間違いなさそう。とするとあやしいのは手に持った時の処理かな」

妹「ラビットの方は原因ではなかった?」

「どうにかした方がいいというか、実際バグはあるよ。きっちり地面だけ判定するようにすれば方向転換しなくなるはずだし。でも事件の主犯ではなさそう」