コントロールリグの関数ライブラリ

コントロールリグのパブリック関数を構築して参照し、リギング ワークフローを迅速化します。

ブループリント と同様に、関数を「public」に設定することで、ユーザーが作成した関数をアセット グラフ間で共有することができます。子クラスしか関数を共有できないブループリントとは異なり、コントロールリグの関数はプロジェクト全体で共有できます。カスタム関数ライブラリを作成して、プロジェクト内のすべてのコントロールリグ グラフで共有できます。

このドキュメントでは、コントロールリグで関数ライブラリを作成するためのベスト プラクティスとなるガイドと、エンジンが提供するデフォルトの関数ライブラリにアクセスする方法について説明します。

新しい関数ライブラリ

以下の手順で、新しいコントロールリグの関数ライブラリの作成方法と使用方法について説明します。

コントロールリグ コンテナを作成する

カスタム関数は、コントロールリグ アセット内にのみ存在できるため、最初にコントロールリグ アセットを作成します。このコントロールリグは、主に関数を格納するために使用するため、特定のスケルタル メッシュにリンクすることはできません。

コンテンツ ブラウザ で、[+ Add (+追加)] をクリックし、[Animation (アニメーション)] > [Control Rig (コントロールリグ)] を選択します。[Create Control Rig Blueprint (コントロールリグ ブループリントを作成)] ダイアログ ウィンドウで、[ControlRig] を選択し、[Create (作成)] をクリックします。作成されたら、コントロールリグを開きます。

create control rig

このアセットの目的上、関数ライブラリはコントロールリグ アセットであるため、特定のスケルトンに対する依存関係はありません。関数のコンテナとして、これを使用すると、アセットをできる限り軽量化できます。

パブリック関数を作成する

コントロールリグ エディタ で、[My Blueprint (マイ ブループリント)][Functions (関数)] セクションで [+ Add] をクリックして新しい関数を作成します。

create control rig function

次に、関数を選択し、[Details (詳細)] パネルで、[Access Specifier][Public] に設定します。この設定により、この関数はすべてのコントロールリグで公開され、アクセス可能になりました。

public function

関数のデータを設定する

関数内では、ツールチップの説明やコンテキスト メニューのカテゴリなど、関数のメタデータを含め、格納する任意のロジックを作成することができます。

この例では、For Each ノードと Set Control Visibility ノードを作成し、関数の Entry ノードと Return ノードに接続しています。

function example

Entry ノードに変数入力を作成するには、Entry を選択し、[Details] パネルの [Inputs (入力)] カテゴリで [+ Add] をクリックします。この例では、以下の変数が作成されています。

  • Rig Element Key (Array 型)。

  • Boolean (Single 型)。

variable setup

次に、変数入力を対応するノードに接続します。

variable connection

必要に応じて、[Details] パネルの Node Settings プロパティを編集して、カテゴリ、ツールチップ、またはその他の有益なプロパティを関数に追加することもできます。

function settings

名称

説明

Category

このプロパティを設定すると、指定されたコンテキスト メニューのカテゴリにノードが配置されます。このカテゴリは、コントロールリグ グラフにノードを追加すると表示されます。

FunctionSetup5.png

Keywords

コンテキスト メニューでこの関数を検索するときに使用できる検索語を追加します。

FunctionSetup6.png

Description

この関数のツールチップの説明を追加します。ツールチップは、コンテキスト メニューの項目、またはグラフに追加された後のノードにカーソルを重ねると表示できます。

FunctionSetup7.png

Color

関数ノードのヘッダの色を設定します。ノードの外観は、[Node Defaults (ノードのデフォルト)] カテゴリを展開することでプレビューできます。

FunctionSetup8.png

関数を参照する

共有した関数を他のコントロールリグに追加するには、リグ グラフ で右クリックし、コンテキスト メニューから関数を追加します。共有した関数は、参照できるようにノード ヘッダにそのフォルダ パスも表示します。

add function

共有した関数ノードをダブルクリックすると、その関数を格納しているコントロールリグ アセットと関数ロジックが表示されます。

関数をローカライズする

関数のロジックを共有バージョンから分岐させる場合は、関数をローカライズします。これにより、現在のリグ グラフ内に関数ロジックのローカル コピーを作成することができます。

このためには、関数ノードを右クリックし、Localize Function を選択します。ダイアログ ウィンドウで、その関数が有効になっていることを確認し、[OK] をクリックします。

localize function

これで関数がローカル関数に変換され、ロジックをローカルに分岐させることができます。

localized to new function

標準関数ライブラリ

Unreal Engine には、デフォルトでコントロールリグの 標準関数ライブラリ が含まれています。このライブラリを参照することで、独自の関数ライブラリの構築方法を把握することができます。また、このライブラリには独自のリギング ワークフローを支援するために使用できるさまざまな関数が含まれています。

標準関数ライブラリは、「Control Rig Plugin」フォルダにあります。このフォルダにアクセスするには、コンテンツ ブラウザ を開き、[Settings (設定)] をクリックして、[Show Engine Content (エンジンのコンテンツを表示)][Show Plugin Content (プラグインのコンテンツを表示)] をオンにして、プラグイン フォルダを有効にします。

show engine and plugin content

次に、「Engine > Plugins > Control Rig Content > StandardFunctionLibrary」にある StandardFunctionLibrary に移動して、開きます。

standard function library

開いたら、[My Blueprint] パネルで各種関数を確認できます。

standard functions

標準関数ライブラリは エンジン コンテンツ で提供されるため、Unreal Engine を再インストールまたは更新した場合、このアセット内で行った変更はすべてオーバーライドされます。エンジン コンテンツのものを修正するのではなく、独自の関数ライブラリを作成することをお勧めします。

Unreal Engine のドキュメントを改善するために協力をお願いします!どのような改善を望んでいるかご意見をお聞かせください。
調査に参加する
キャンセル