アンリアルクエスト4にオンライン参加した(初級編)
先日開催されたアンリアルクエスト4「アンリアルエンジンを使って1日で作品を作ろう!」というイベントに参加した記録と感想
初級クエスト
的を壊せ
- 弾のBPに
Projectile
タグをつける - 的のBPで
On Component Hit
イベントを使用、Actor has Tag
で分岐 - 弾が当たった時には
DestroyActor
- 弾のBPに
的を動かせ
SetActorLocationを使用してランダム指定したLocationにむけてEventTick毎にDirectionをNormalizeして変数MoveSpeedで移動する妙な方法しか思いつかなかった。後でInterpToMovement
コンポーネントという便利な存在を知る- Detailから
Control Points
を複数設定可能 Behaiviour Type
をPingPongにする
- Detailから
ゴールを作成せよ
エディタ内のモデリングツールで外枠のリングと内側のエリアを作成した- 内側のメッシュのコリジョンを
OverlapAllDynamic
にしてGenerateOverlapEvents
をチェック OnComponentBeginOverlap
イベントでActorHasTag
でPlayerを検出- Delay使ってGoalEvent発火
- 内側のメッシュのコリジョンを
秒数が増える仕組みを作成せよ
EventTick
でDeltaSeconds
を加算していく
ステージを作成せよ
エディタ内のモデリングツールを初めて使った。ワールド内に配置された既存のメッシュを選択して取り返しのつかない変更をしてしまう。メッシュに変な穴があいた当たると死ぬ棘を作成せよ
モデリングツールを使用して棘を作る。簡単そうだがメッシュが気のせいレベルで動いてまともに使えな・・・原因はマテリアルスロットになぜか入れてしまったvertex animationのあるAdvancedFlagだった- モデリングツールで作成したものをStatickMesh化、editorの最上部のActorメニューから
Convert [xxx] to StaticMesh
OnComponentHit
イベントでPlayerタグを検出してプレイヤーをcastして死亡イベントを発火させた。(インターフェースでやった方がいいのかな)- プレイヤーBPで死亡イベントは
SetCollisionEnabled
とSetAllbodies SimulatePhysics
を使うといいらしい
- モデリングツールで作成したものをStatickMesh化、editorの最上部のActorメニューから
感想
「これはこうやるんだよ」といった情報があれば1日でこなせる設定で、それらの情報を知らなかったら苦労するのを実感した。制限時間内に終わらせるには知らない事を一人考えこむより公式ドキュメント読んで検索するか他の人に聞いてどうにかするのが正解なんだろう。目の前の得体のしれないパラメータ総当たりして時間を浪費してしまう癖は直さないとなぁ