2023-02-01から1ヶ月間の記事一覧
今回はC++からではなく直接入力する方法で翻訳します。個人制作の範囲なら翻訳を別の人が担当するということは少ないと思います。 参考になるサイト 最新UE4タイトルでのローカライズ事例 【UE4 Localization Deep Dive 2019】 | ドクセル (docswell.com) テ…
字幕 字幕が呼ばれるタイミングは時間、場所、アクションなど様々なフラグによって違うため、World Subsystemを利用するとどこからでもアクセスできて便利です。 BattleManagerSubsystem.h 作成したBattle Manager SubsystemはWorld Managerなのでここにイベ…
タイトル画面とステージ遷移 UMGを使ってタイトルからステージへ移行するには、Open Levelを使います。 タイトル用の何もない真っ暗な新規レベルを作成します。 次に新規ブループリントからGame Mode Baseを選択し、BP_TitleGameModeと名付けます。 BP_Title…
今回は参考になった他者様のブログ紹介です。 ステージ等の切り替えの際、普通にOpen Levelでレベルを開くとロードが終わるまで画面が完全に固まってしまいます。 「画面が完全に止まった状態」というのはゲームを遊ぶプレイヤーに対してかなりのストレスを…
前々回Battle Manager SubsystemにEnemy Countという変数を作りました。ワールド内の敵キャラクターがやられると、この数字は減っていきます。そしてこの数字が0になったときに、通知がいくようになればゴールが作れます。 イベントディスパッチャー 1つ以…
Apply Damageで銃からダメージを与えると、Any Damageというイベントでダメージを数字として受け取ります。 ステータスを作る 新規C++クラスからActor Componentを選択し、StatusComponentと名付けます。 StatusComponent.h StatusComponent.cpp CharacterBa…
Subsystemの内容が多すぎるので詳しい説明は調べてください。 Subsystemは自身を管理しているものと同じタイミングで生成、破棄されるため、手動で生成、破棄をする必要がなく管理が楽という利点があります。 生成されていればどこからでもアクセスが可能で…
UIに武器の弾数等を表示する UIに武器の名前やマガジンの弾数を表示できるようにしたいと思います。今までやってきたことから、自分が持っている武器はCurrent Weaponという変数に格納しているので、Current Weaponから引っ張ってくるだけで済みます。 Weapo…
UIの作成はWidgetブループリントを使って行います。 体力の表示 ユーザーインターフェースから新規ウィジェットブループリントを作成します。WBP_MainHUDと名付けます。 WBP_MainHUD Canvas Panelを配置します。 体力を表示させるにはProgress Barを使用しま…
ADSとはAim DOwn Sightの略で、銃をのぞき込んで撃つことです。 ADS PlayerCharacter.h ADSに関する関数を作成していきます。bIsAiming、IsAiming、SetAiming、FOV、GetFOVを作成します。 PlayerCharacter.cpp 入力アクションから新しくIA_RightActionをDigi…
前回、インターフェースを通してBP_WeaponBaseのPickup Weapon関数とPickup Inventory関数で銃の所持者であるAs Player Character変数を登録できるようにしました。 Part12-銃を作る③の最後で、銃の所持者をBegin Playで登録していましたが、BPI_Weaponを通…
最終的には今持っている武器を捨てて、落ちてる武器を拾い上げるようにしたいと思います。 武器を拾う まずは落ちてるアイテムを認識できるようにします。 WeaponBase.h UPROPERTY(VisibleAnywhere, BlueprintReadOnly, Category = "Weapon", meta = (AllowP…
BP_WeaponBaseを継承して子BPを作ります。すべての銃はこのBP_WeaponBaseを継承しており、基本的にステータスをいじるだけで武器の種類を増やすことができます。 武器の持ち替え 2つ以上の武器を装備している時、キーボードの1、2番やホイールで変更できる…