5日間にわたって課題が出題されていた「アンリアルクエスト」。短い期間でしたが、どうにか無事動画を提出することができました。
前回の記事では敵を導入したものの、振り向くだけで動かない現象が残ってしまった。これについてはレベルブループリントとクラスブループリントの両方に移動用のノードが設定されてしまっていたのが原因だった。
これをクラスのみにすることで無事敵が向かってくるように。レベルとクラスの使い分けやブループリント同士の連携についてまだ理解しきれていないので、おさえていけるようにしたい。
スコア表示とアイテム取得を導入するにあたって、制限時間とスコアをウィジェットで表示させることに。UIはほとんど経験がなかったが、やり方がわかってしまえば割と簡単にまとめることができたので、テキスト表示以外にも使えるようにしていきたい。
一番苦戦したのは最終日の「バトル、敵を倒す」という課題。教本やFPSテンプレートのように「LineTraceByChannel」をつかって当たり判定を取ろうと思ったのだが、うまく敵を倒すことができなかった。弾丸用クラスのStaticMeshがダメージ生成より先にDestroyされてしまうようになっていたと思われるが解決できず。DestroyやLifeSpanのノードを外すとひとまずMeshの召喚はできるようになったので、生成したMeshに当たり判定をつけることでどうにか解消。
爆発エフェクトをつければイスの投下でダメージを与えていても、それっぽくなっている。当たり判定などの機能は今度じっくり勉強することにする。
あとはゴールにのるとGoalと表示させるようにしたり、死んだらすぐリスポーンではなく一度ラグドール化させることなどを導入。敵とスコアアイテムをいい感じに配置して、何とか動画提出完了。
ほぼ5日間でゲームらしい作品にまとめることができたのはうれしいし、いい経験になったと思う。UE4はエンジンそのままの機能でもゲームとしてまとめるには十分な機能がそろっていたのとてもやりやすかった。ただその機能を使いこなせるかどうかはまた別の話なのだけど。
普段は、プログラミングの関係もあってUnityを使うことも多くなってきたが、サクッとゲームにするのはUE4のほうが簡単な気がしてきた。
今後はプログラミング用にUnity、ゲーム用にUE4とどちらも習得していくことになりそうだ。
コメント