1. Home
  2. /
  3. Study
  4. /
  5. 作れるPluginの種類 Plugin開発を始めよう 01

作れるPluginの種類 Plugin開発を始めよう 01

作れるPluginの種類 Plugin開発を始めよう 01

Plugin開発を始めよう

C++とBlueprintの基本的な使い方を書いた本を書いたので、そろそろ実践的に使い方を模索していきます。
文法と違ってまだ何ができるのか分からないのでBlogの方でサンプルがいくつかできたらZennの方に本としてまとめます。

書いてある内容はVisualStudioがあること前提なので、VisualStudioのインストールと環境構築が必要です。

Visual Studio 2019のセットアップ|Unreal Engine 5から始める C++ & Blueprint

Pluginの公式ドキュメントを参考に書いていきます。

プラグイン

Unreal Engine プラグインの作成方法。

独自Pluginの作り方

新規Pluginの作成

プロジェクトを作成する際に「C++」でプロジェクトを作成します。

[Edit] > [Plugins]を選択します。

独自のPluginを作成するには左上の「Add」ボタンをクリックします。

プラグインの作成手順は以下の手順になります。

  1. Pluginのテンプレートを選択する
  2. Plugin名を入力する
  3. Plugin情報を入力する(任意)
  4. Create Pluginをクリック

Pluginのウィンドウで作成したPlugin名を検索すると一覧に登録されています。

Property 説明
Author 制作者名
Description Pluginの説明
Author URL 制作者のPlugin説明用のURLを書いておくとPluginの制作者名をクリックするとURLに移動する
Is Beta Version チェックボックスを有効にすると、Plugin名の横にBetaが表示される

Editボタンや(Plugin名).pluginファイルで設定をより詳細に変更できます。

ContentsBrowserやVisualStudioに追加されたPluginが表示されます。

Blueprintのプロジェクトの場合

Blueprintでプロジェクトを作成した場合には、テンプレートが「Content Only」しか選択できません。

C++のクラスを1つ作成すればC++のプロジェクトに変わります。

[Tools] > [New C++ Class…]

[None] > [Next >]

[Create Class]をクリック

C++のクラスを1つでも作れば、他のテンプレートを選べるようになります。

Pluginテンプレートの種類

選べるテンプレートではどんなことができるのでしょうか。

Template できること
Blank 最小限のコードで空のプラグインを作成します。
Content Only コンテンツのみを含む空のプラグインを作成します。
Blueprint Library Blueprint Function Library を含むプラグインを作成します。
Editor Mode [モード] タブ (フォリッジ、ランドスケープなどの隣) に表示される UI を指定するためのツールキットの例が含まれます。
Editor Stanndalone Window レベル エディターのツールバーにボタンを追加するプラグインを作成し、クリックすると空のスタンドアロン タブ ウィンドウを呼び出します。
Editor Toolbar Button レベル エディタのツールバーにボタンを追加するプラグインを作成します。
Third Party Library サードパーティ ライブラリを使用するプラグインを作成します。

Blank

すべてをゼロから設定したくない場合、または非ビジュアル プラグインを作成している場合は、これを選択してください。 このテンプレートで作成されたプラグインは、エディタのプラグイン リストに表示されますが、ボタンやメニュー エントリは登録されません。

Content Only

ContentsフォルダだけのPluginを作成します。
Templateとして入っているのは、Contentsフォルダとサムネイル画像だけです。

Blueprint Library

Blueprint Function Library を含むプラグインを作成します。
静的ブループリント ノードを作成する場合は、これを選択します。

サンプルの関数が用意されています。

Edit Mode

エディター モードを持つプラグインを作成します。
これには、[モード] タブ (フォリケージ、ランドスケープなどの隣) に表示されるUIを指定するためのツールキットの例が含まれます。
また、エディターの操作と元に戻す/やり直し機能の使用法を示す非常に基本的なUIも含まれます。

Editor Standalone Window

レベル エディタのツールバーにボタンを追加するプラグインを作成し、クリックすると空のスタンドアロン タブ ウィンドウを呼び出します。

WindowメニューにPlugin名のメニューが追加されます。
メニューを選択するとウィンドウが表示されます。

Editor Toolbar Button

レベル エディタのツールバーにボタンを追加するプラグインを作成します。
作成した「OnButtonClick」イベントに何かを実装することから始めます。

ツールバーにアイコンが追加されます。
クリックするとメッセージウィンドウが表示されます。

Third Party Library

含まれているサードパーティ ライブラリを使用するプラグインを作成します。
これは、サードパーティのライブラリを自分でインクルード、ロード、および使用する方法の例として使用できます。

DLLやlibファイルの読込サンプルが実装されています。
サンプルとしてThirdPartyPluginのダイアログが表示されます。

まとめ

当初プラグイン作成を予定していたけど、C++の書き方に確信が持てなかったので文法を調べて書いていましたが、ようやく実践的な内容を書きはじめることができました。
以前書いていたところまで追いつけるように書いていきます。

関連記事

UE5から追加された新Widget ComboBox(Key)

UE5から追加された新Widget ComboBox(Key)

ComboBox(Key)について UE5からComboBox(Key)が追加されました。 公式ドキュメントにもフォーラムにも使用方法が書かれていなかったので調査してみました。 ComboBox(Key)ではComboBoxのItemにWidgetを使用できます。 アイコンとTextを持ったUserWidgetをItemにするサンプルを紹介します。 ComboBox(Key)の使い方について 今回はEdito
優先度の高いイシューから解決しよう。 脱ノウハウコレクター

優先度の高いイシューから解決しよう。 脱ノウハウコレクター

Githubにissueを書きだしてからやることがハッキリした 通勤時間で何もできない時間があるから、購入したり図書館で借りた本を読書しています。 最近始めたのは朝書いた内容を振り返りながら足りていない処をissueに書くようにしています。 そもそも「issueってなんだ?」ってところから気になったので、有名な「イシューからはじめよ」という本を読んで「issueとは何か?」をまとめていきます。 日々気にな