ブループリントの構造体変数

ブループリント構造体変数を使用すると、関連情報を含む異なるデータ型をまとめて格納することができます。

Windows
MacOS
Linux

構造体は、異なるデータ型をアクセスしやすいように関連付け、まとめているコレクションです。ほとんどのユーザーは既にブループリントでシンプルな構造体を使用しています。 これは、Vector (ベクター)、Rotator (ローテータ)、Transform (トランスフォーム) はすべて構造体変数であるためです。例えば、Vector 構造体には、相互に関連している X float 変数、Y float 変数、Z float 変数が格納されています。

構造体はデータをネストすることもできます。Transform 構造体は、アクタに関する場所 (Vector 構造体)、回転 (Rotator 構造体)、スケール (Vector 構造体) データが格納されています。

構造体を作成する

構造体変数をブループリントに追加する方法は、他の ブループリント変数 を追加する方法と同じです。Vectors、Rotators、Transforms などのシンプルな構造体は変数型ドロップダウン メニューの上の方に表示されています。

AddSimpleStruct.png

ドロップダウン メニューの [Structure] セクションに、ブループリントで使用可能な構造体変数がすべて表示されます。

AddComplexStruct.png

構造体情報にアクセスする

構造体はデータをまとめてバンドルすることで機能するため、このような小さな情報のチャンクにアクセスするための作業も必要になります。これには、何通りかの方法があります。

構造体のピンを分割する

単一ノード上の構造体の個々の変数にアクセスできる必要がある場合は、構造体ピン分割ツールが役立ちます。

ピンを右クリックして、[Split Struct Pin (構造体ピンの分割)] を選択します。

SplitStructPin.png

その構造体に含まれるすべての変数が表示され、個々に値を入力したり操作することが可能になります。

LocationXYZ.png

[Split Struct Pin] をアンドゥするには、新規作成したピンのいずれかを右クリックして [Recombine Struct Pin (構造体ピンの再結合)] を選択します。

RecombineStructPin.png

入力および出力の両方の構造体ピンを分割したり再結合したりできます。

構造体を分解する

1 つの構造体を個々の部分に分解すると、多くの場合、関数やマクロで繰り返し処理されるゲームプレイ ロジックになります。Break Struct ノードを使うと、ブループリント グラフ全体のビヘイビアを簡単にリプリケートすることができます。 Break Struct ノードを作成するには、構造体の出力ピンを引き出して、コンテキストメニューから Break [Struct Name] を選択します。

BreakHitResult.png

Break Struct ノードの名前とピンは、使用する構造体によって異なりますが、全体としては構造体は個々の部分に分解されます。

BrokenHitResult.png

例えば、Hit ResultImpact PointHit ComponentHit Bone Name を常に使いたい場合、Break Hit Result ノードを関数内に持つことができます。 Hit Result を関数入力として入力すれば、常にこれらの 3 つのデータ構成要素を関数内にバラバラに持つことができます。

BreakHitExample.png

構造体を作成する

構造体は、データを個々の要素に分割した場合と同じように、適切なデータから作成することもできます。

Make Struct ノードを作成するには、入力ピンを引き出して、コンテキストメニューから Make [Struct Name] を選択します。

MakeLinearMenu.png

Make Struct ノードの名前と入力ピンは、使用する構造体によって異なりますが、全体としては格納されているすべてのデータから構造体を作成できます。

MakeLinearColor.png

構造体にメンバーを設定する

時々、構造体には多くのデータが含まれていて、その中のいくつかだけ変更したい場合があります。構造体にメンバーを設定すると、一定を保っているデータピンをすべて接続しなくても、 変更するデータを非常に細かく指定できるようになります。

SetMembersInStruct.png

Set Members in Struct ノードで使用できるメンバーを変更するには、そのノードを選択します。[Details (詳細)] パネルにあるチェックボックスで、使用可能な各メンバーをノード上のピンとして公開することができます。公開されないメンバー変数は、 Set Members in Struct ノードでは変更されません。

SetMembersDetails.png

カスタム構造体を使用する

Unreal Engine で提供されている構造体の使用に加えて、独自の変数および値を使用して独自のカスタム構造体を作成できます。

カスタム構造体を作成するには コンテンツ ブラウザ で右クリックして、[Create Advanced Asset (高度なアセットの作成)] > [Blueprints (ブループリント)] で、[Structure (構造体)] を選択します。

Structs.png

構造体の名前を付けて開くと、[Structure (構造体)] ウィンドウ内で変数およびそのデフォルト値を追加できます。

StructWindow.png

次に、変数を作成して、構造体の名前に [Variable Type (変数の型)] を割り当てると、他のどのブループリント内でもこの構造体を変数として追加できます。

CreatingStructVar.png

コンパイルしたら、構造体に追加したすべての変数を確認でき、この構造体を定義することができます。

DefaultValues.png

カスタム構造体を分割する

カスタム構造体をグラフに追加すると、カスタム構造体を引き出して分割することで、カスタム構造体内の変数にアクセスできます。

BreakStruct.png

そのため、個別の変数を構造体から他のブループリント ノードに接続できます。必要に応じて、[Details (詳細)] パネルで [Hide Unconnected Pins (接続されていないピンを非表示にする)] ボタンをクリックすると、他のブループリント ノードに接続されていないすべてのピンを非表示にできます。

HideUnconnectedPins.png

接続されていないピンはすべて Break Struct ノードでは表示されません。

HiddenPins.png

目的の変数の横にある ([As pin (ピンの場合)]) プロパティをオンにすると、[Details (詳細)] パネルのピンを再度表示することができます。

Tags
Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback