2023-01-01から1ヶ月間の記事一覧

UE5でFPSゲーム制作 Part13-リロード

リロード リロードなどのアニメーションを伴う動作はMontage Playを使用するとアニメーションの途中や終わったとき、やめたときなどのタイミングでイベントを通知してくれるので便利です。 WeaponBaseにリロード関連の関数を追加します。Fire関数はマガジン…

UE5でFPSゲーム制作 Part12-銃を作る③

銃弾とダメージ判定 銃でダメージを与える方法は実際に弾をActorで作って飛ばす方法と、レイキャストを使って視線の先に敵がいるかを判定する方法の2種類が大まかな方法になると思います。 Actorで弾をつくる方法は弾道や弾速などがリアルに出来ますが、弾…

UE5でFPSゲーム制作 Part11-AbilitySystemの排他制御

GASにはタグを設定することができ、これによってアビリティ中に他のアビリティをブロックしたり、キャンセルすることができます。 前回の銃の発射処理で説明しなかったGA_Fireを作っていきます。 新規のGameplay AbilityブループリントからGA_Fireと名付け、…

UE5でFPSゲーム制作 Part10-銃を作る②

とりあえず銃を持った状態になったので、銃の発射処理を作っていきます。 ブループリントインターフェース キャラクターから武器へ発射した情報を通知するにはブループリントインターフェースを使用します。 ブループリントからブループリントインターフェー…

UE5でFPSゲーム制作 Part9-銃を作る①

武器はどんなシステムを作るかに非常に影響されるので、ある程度のコンセプトを先に決めておくと作りやすくなります。 銃の作成 まずはC++で基底クラスを作ります。Actorクラスを選択しWeaponBaseと名付けます。 WeaponBase.h USkeletalMeshComponent* Mesh…

UE5でFPSゲーム制作 Part8-しゃがみ

(2023/10/10追記)SpringArmComponentを利用した方法を追加しました。この方法は主にマルチプレイを視野に入れた実装方法になります。 UnrealEngineにはデフォルトでしゃがみの機能があり、CrouchとUnCrouchという関数で実装することができます。ただし、こ…

UE5でFPSゲーム制作 Part7-ダッシュ

ダッシュ ダッシュをGASで実装するためには、AttributeクラスとGameplay Effectクラスが必要になります。 このあたりは内容が非常に難しく実装方法だけ記述しているので、ちゃんと理解されたい方は自分が参考にした記事を載せておきます。 参考にしたブログ…

UE5でFPSゲーム制作 Part6-ジャンプ

ジャンプ 前々回のEnhancedInputの時と同じように 入力アクションからIA_Jumpを作成し、Value TypeをDigital(bool)にします。 IMC_FPSにアクションマッピングを追加し、TriggersをPressedにします。 次にGameplayAbilityブループリントを作成から、Gameplay …

UE5でFPSゲーム制作 Part5-GameplayAbilitySystem

Gameplay Ability System (以下GAS)は多機能な反面、複雑でとっつきにくい印象があります。少なくとも自分はそうでした。 個人制作レベルであまり使う必要はないのかもしれませんが、GASの機能の一つである挙動の排他的処理が非常に優秀なので実装していきた…

UE5でFPSゲーム制作 Part4-EnhancedInput

Enhanced Input EnhancedInputはこれまでよりも複雑な入力処理に対応することができる入力システムです。UE5.1からはプロジェクト設定のデフォルトのプレイヤー入力クラス、入力コンポーネントクラスも変更されており正式に実装されたことがわかりました。 …

UE5でFPSゲーム制作 Part3-GameModeの変更とキャラのスポーン

GameModeの変更 Blueprintsというフォルダを作成し、ブループリントクラスからすべてのクラスを選びます。前回作成したC++のTutoGameModeを選択し、BP_MainGameModeと名付けて作成します。 プロジェクト設定→マップ&モード→デフォルトのゲームモードをGameM…

UE5でFPSゲーム制作 Part2-基底クラスの作成

BPによる参照のデメリットについて BPによる参照は依存アセットも一緒にロードしてくれる非常に便利な機能を持っていますが、大量のBPクラスでお互いがお互いを参照するような不適切な参照はエディタのロード時間とメモリ使用量に深刻な影響を与えます。 (…

UE5でFPSゲーム制作 Part1-セッティング~プラグイン導入

自分のメモ用ですが、参考程度になればいいなと思って記事に残そうと思います。ただ、関数等の詳しい説明はしませんし、できませんので、どちらかというとワークフローの参考になればと思います。 環境はUE5.1.0です。 セッティング エンジンを起動したらゲ…