UE5/UE4 C++でカスタムコンポーネント(Custom Component)をブループリント(Blueprint)でカテゴリ(ClassGropu)や名前(DisplayName)をクラス指定子(Class Specifiers)を使って追加して使えるようにする(meta=(BlueprintSpawnableComponent)、meta=(DisplayName)、ClassGroup)
C++でカスタムコンポーネント(Custom Component)をブループリント(Blueprint)でカテゴリ(ClassGropu)や名前(DisplayName)をクラス指定子(Class Specifiers)を使って追加して使えるようにする方法です。
こちらを参考にさせていただきました。
・Unreal Engine C++ 逆引きメモ
https://edom18.hateblo.jp/entry/2018/03/16/105506
まずこんな感じでコンポーネント(Component)を作成します。
「meta=(DisplayName="Debug Test")」という記述で「Debug Test」という名前で登録するようにしてみました。
ただ、これを実行してみるとこんな感じに。

先ほど作成したコンポーネントは追加されていないようです。
参考にさせていただいたサイトによると
「meta=BlueprintSpawnableComponent」を記述すると一覧に追加されるようです。
というわけで記述を追加してみました。
結果はこんな感じに。

無事「Debug」カテゴリに「Debug Test」という名前でカスタムコンポーネントが登録されました。
ここらへんは知識として知っていないとなんで?ってなりそうですね。
こちらを参考にさせていただきました。
・Unreal Engine C++ 逆引きメモ
https://edom18.hateblo.jp/entry/2018/03/16/105506
まずこんな感じでコンポーネント(Component)を作成します。
「ClassGroup="Debug"」という記述で「Debug」というカテゴリに。UCLASS(Blueprintable, ClassGroup="Debug", meta=(DisplayName="Debug Test"))
class UDebugActorComponent : public UActorComponent
{GENERATED_BODY()
};
「meta=(DisplayName="Debug Test")」という記述で「Debug Test」という名前で登録するようにしてみました。
ただ、これを実行してみるとこんな感じに。

先ほど作成したコンポーネントは追加されていないようです。
参考にさせていただいたサイトによると
「meta=BlueprintSpawnableComponent」を記述すると一覧に追加されるようです。
というわけで記述を追加してみました。
UCLASS(Blueprintable, ClassGroup="Debug", meta=(DisplayName="Debug Test", BlueprintSpawnableComponent))
class UDebugActorComponent : public UActorComponent
{
GENERATED_BODY()};
結果はこんな感じに。

無事「Debug」カテゴリに「Debug Test」という名前でカスタムコンポーネントが登録されました。
ここらへんは知識として知っていないとなんで?ってなりそうですね。
| UE5 | 10:00 | comments:0 | trackbacks:0 | TOP↑