ぼっちプログラマのメモ

UE4とかUE5とかについて書いたり書かなかったり。

C++

【UE5】FEditorDelegates 自分用メモ

はじめに エディタの特定のタイミングに処理を追加するのにFEditorDelegatesをよく使いますが、ちょうど忘れたタイミングで必要になり毎回エンジンコードを探しに行くのが面倒だったので、メモ代わりに関数名・コメント(日本語版)を並べました。何か追記す…

【UE5】Live Coding時に自動的にSlateを更新する「Live Update for Slate」プラグインが便利という話

はじめに ✕ おわりに ✕ おまけ SlateをC++でガリガリ書く際、変更結果を確認するためにエディタやタブを開き直すのが手間に感じていました…が、 偶然見つけた「Live Update for Slate」プラグイン有効にすると、LiveCodingによるビルド成功時に自動的にエデ…

【UE5】エンジン内にコッソリあるSlateサンプル集(SlateViewer)を見る方法

はじめに 下記公式ドキュメントにて「Slate Viewer Widget Gallery で実演されないレイアウトとウィジェットの複雑性」とあるのですが… Unreal Engine でのスレート UI ウィジェットのサンプル | Unreal Engine 5.4 ドキュメンテーション | Epic Developer C…

【UE5】Instanced Object におけるプロパティ表示を少し強引にフィルタリングしてみる

はじめに Instanced Object という機能を使うことで実装を分割・併用することができ、柔軟かつ変更に強い設計を構築することができます。 UE5/UE4 C++で変数にクラス(Class)のインスタンス(Instance)をプロパティ指定子(Property Specifiers)を使って…

【UE5】特定のディレクトリ以下にあるファイルの変更を検出する方法について

はじめに UE5にはAuto Reimportという「アセットの元データ(画像、モデル、テキストデータなど)が変更されると自動的に再インポートを行う」機能があります。ただ直接的な元データではなかったり、プロジェクト独自にチェックや変換処理をしたい時はAuto R…

【UE5】外部ファイルを拡張子に関連付けられた既定アプリで開く方法について(LaunchFileInDefaultExternalApplication)

はじめに UE5からTXTファイルやCSVファイルなどをテキストエディタやExcelなどのUE5外のアプリケーションで開きたいことは稀によくあります。 その際に便利な関数としてFPlatformProcess::CreateProc や FPlatformProcess::ExecProcessがあります。 paperslo…

【UE5】AnimNodeのAlphaが0のときって本当に処理走らないの?

はじめに AnimNodeのAlphaを0に設定するとそのノードの処理がアニメーション(各ボーン)に反映されなくなりますが、 GitHubにて「内部処理は動いてないの?大丈夫?」と質問されて少し不安になったので調べてみたという話 https://github.com/pafuhana1213/…

【UE5】エディター右上にプロジェクト独自のテキスト・情報を表示する方法

はじめに エディタ設定の Show Frame Rate and Memory をONにすると、エディタ右上にフレームレートやメモリなどの情報が出ます。 ここにプロジェクト固有の情報表示したい! パフォーマンス関連の情報ももっと出したい!!! できた!!! ということで、エ…

【UE5】自作AnimNodeが持つプロパティのカテゴリーの表示順を変える方法

はじめに この記事を見る方の大半はご存知の通り、UPROPERTY にて Category を設定すると USTRUCT(BlueprintType) struct KAWAIIPHYSICS_API FAnimNode_KawaiiPhysics : public FAnimNode_SkeletalControlBase { GENERATED_USTRUCT_BODY() public: UPROPERTY…

【UE5】User ToolBoxのタブがエディタ起動時に表示・復元されない問題の修正方法 in UE5.3

はじめに UE5.2からUser ToolBoxという機能が追加され、EditorUtilityWidgetを作らなくてもサクッと簡易的なエディタ拡張ができるようになりました! User ToolBox(UTB)とは? User ToolBox 5.2 | Tutorialしかし、User ToolBoxで作った画面(User ToolBox T…

【UE4・UE5】StringTableに項目を追加・削除・リセットするBPノードの作り方

はじめに 小ネタですが、EUWなどからStringTableに項目を追加したり、項目を削除・リセットする必要が出てきたのでそのメモをさらに指定のStringTableに対して要素の追加もできるように。標準だとStringTableに対してはGet系のノードしか用意されてないのでC…

【UE5】グラフベースのUIで処理の流れを組める「Common Conversation」プラグインを動かす簡単なサンプルを公開しました!

この記事は Unreal Engine (UE)のカレンダー | Advent Calendar 2022 2日目の代理投稿記事です。 はじめに 突然ですが、UE4.27から追加されているCommon ConversationプラグインをUE5.1で動かしてみたというサンプルプロジェクトを公開しました! github.com…

Gameplay Effect にてModifierの値をBPから直接指定できる Set by Caller の使い方について

Gameplay Effectについてはこちら okawari-hakumai.hatenablog.com historia.co.jp qiita.com github.comGameplay EffectによるAttribute Setへの設定・変更値は基本的にAbilityやCurveTableや自作Magnituteで設定するのですが、自分のプロジェクトにてBPか…

【UE4】GUIフレームワーク「Dear ImGui」を使ってデバッグ・ツール用UIを作ってみよう! < 導入・基本編 >

本記事はUnreal Engine 4 (UE4) Advent Calendar 2020 13日目の記事 です。 今回はC++メインということもありプログラマさん向けです。非エンジニアの方はプログラマさんに実装を相談又は手伝ってもらいましょう! はじめに 「Dear ImGui」はご存知でしょう…

揺れ骨用自作AnimNode「Kawaii Physics」の内部実装解説的なもの その1

はじめに 疑似物理プラグインであるKawaii Physicsを先日リリースしました。髪、スカート、胸などの揺れものを「かんたんに」「かわいく」揺らすことができます。 github.comエンジン標準のPhysics AssetやAnim Dynamicsは高性能かつ多機能なのですが…慣れる…