Island541 その3

この記事は約3分で読めます。

GAS(GameplayAbilitiySystem)とUQ1部分のレベルデザインを少し進めていく.

まずGASの下地作りから.GASはアンリアルクエスト5の時にTagを使ったコンボ攻撃は確かやっているはずで,その記憶を思い出すところから始まりました.

確かキャラクターにAblilitySystemコンポーネントを追加してGiveAbilityしたらよかったはず・・・とUQ5プロジェクトを写経しつつ,内部の実装はまだ未定なのでひとまずPrintStringを入れておきました.

InputActionに繋いで,きちんと表示されることが確認できれば今回は大丈夫.このTryActivateもクラスとタグとがあり,どちらがいいか迷うものの,おそらくタグの方が同一条件で発動したり,そのほかのTagで分岐させるときに便利で,確実にあるabilityを発動させたいならクラスを指定するということであっているんでしょうか.

今回はAttackに繋いだパンチabilityがきちんと発動していたのでひとまず成功です.

そのほかのInputActionにもabilityを同様に割り当てておきます.

この時にCrouchやDashは実はActionではなく状態として扱ったよかったかとか思いました.できればこの辺りはGameplayEffectを使いたかったのですが,こちらはまだ勉強不足でいったんお預け.そしてこのあたりのキャラクター実装はモーションと結びついてくるので,早い段階でLyraあたりからモーションを引っ張ってきたり,アンリアルクエストの攻撃モーションなどを取り入れたりする必要がありそうと感じました.

GASは公式のドキュメントや解説動画をもう少し時間を使ってじっくり勉強しないと手戻りが発生してしまいそうである.

Unreal Engine のゲームプレイ アビリティ システム | Unreal Engine 5.4 ドキュメンテーション | Epic Developer Community
ゲームプレイ アビリティ システムの概要

ということで,いったんキャラ実装からステージ実装へ.まずはアンリアルクエスト1のステージ再現を目指す.

この動画,どういうわけか10万再生(現在はほぼ停滞)になっている謎の現象が発生し,ある意味今ぷちコンなどのUE製作コミュニティに参加している理由でもある原点であります.

今見返すと,ステージギミックとしては動く床ととげくらいで,あとは敵キャラがいるだけのかなりシンプルな構成ですね.しかも当時はまだぎりぎりUE4だったはずです.

完全再現とは言わないまでも,できるだけ似たような構成で,かつUE5っぽい機能も使っていきたいと.そんなわけでモデリングツールを使ってステージを作ってみることにしました.

階段や基本的なプリミティブ形状が簡単に作れる機能.これと先日作った動く床とブランコを使ってレベルを組み立てていく・・・はずだったが一本道になってしまった.

仕方がないのでダメージを受けるトゲの土台だけ作ってこれも配置.しかしまだ単調.

その代わり敵が出てくる大広間を少し立派にスペースをとってみました.敵をまだ実装していないので何体置くかは要調整ですがこのエリアに入ると戦闘開始みたいできるとよいかも.

戦闘が終わったらすでに動画にまとめた要素としてはアンリアルクエスト1の分はクリアできている計算として,この後の区画にやり残したクエストやアンリアルクエスト2の要素を盛り込むというのがまとまりが良いかもしれない.

本日は短いですがここまで.

コメント

タイトルとURLをコピーしました