DMX プラグイン に含まれるのは、C++ 外部での DMX の送受信を単純化するための、多様なカスタム ブループリント ノードです。さらに、プラグインに含まれるのは、共通の Unreal Engine アーキテクチャとロジックと同様の多様なゲッター関数とセッター関数です。これは DMX プログラミングの習得に役立ちます。これらの関数では、属性名、タグ名、アクティブ ユニバース、チャンネル、フィクスチャリファレンスなど各パラメータにアクセスできます。
すべてのブループリントはグローバルでアクセスでき、UMG にすべて実装されています。シーンにアクタは必要ありません。カスタム DMX サブシステムの配下にノードが構築されていて、わかりやすい組織構造で、DMX の固有ノードを簡単に見つけられます。
DMX Subsystem
DMX Subsystem は、コードとユーザー エクスペリエンスの観点で、ブループリント属性を整理するためのターゲット システムとして機能します。サブシステム内に含まれる各ノードでは、DMXSubsystem ノードがターゲット入力として必要です。

Send DMX BP
このブループリントは、入力マップで定義された対象フィクスチャ パッチ、指定の属性名と値に対して、指定プロトコルで DMX を送信します。このブループリントでは、ユーザーには有効な DMX ライブラリ アセットと少なくとも 1 つの登録済みコントローラー、フィクスチャタイプ、フィクスチャ パッチが必要です。プロトコルは入力フィクスチャ パッチで定義されます。
ピン | 説明 |
---|---|
Target | DMX サブシステムの参照。 |
Fixture Patch | 送信に使用するプロトコル。 |
Address | 送信するアドレスと値のマップ (キー = アドレス、値 = 送信する値)。 |
Return | EDMXSendResult |

DMX Send Raw BP
このブループリントは、プロトコル仕様とアドレス/値マップで指定されるプロトコル ユニバースに DMX を送信します。このブループリントは DMX ライブラリに依存せず、特定のプロトコルとユニバースに対して DMX の raw データを送信します。SendDMX はよく使用されるブループリントで、一方 SendDMXRaw は、フィクスチャパッチがない、または利用できないときに簡単にデバッグしプロトタイプを作成するために使用される場合がほとんどです。
ピン | 説明 |
---|---|
Target | DMX サブシステムの参照。 |
Selected Protocol | 送信に使用するプロトコル。 |
Universe | 送信先のリモート ユニバース。 |
Address | 送信するアドレスと値のマップ (キー = アドレス、値 = 送信する値)。 |
Return | EDMXSendResult |

DMX の受信
On Protocol Received (4.26 で非推奨)
Bind Event to On Protocol Received ノードで、受信 DMX をリッスンするイベント グラフ内のカスタム イベントをバインドできます。正しく受信した場合、イベントが実行され、プロトコル、ユニバース、バイト配列を含む、受信パケットに関する情報を提供します。
このノードを使用するには、ノードをカスタム イベントにバインドするだけです。

ピン | 説明 |
---|---|
Protocol | 受信プロトコル。 |
Remote Universe | 受信したリモート ユニバース。 |
DMXBuffer | 受信したユニバースに対する完全なバイト配列。 |
On Fixture Patch Received
On Fixture Patch Received ノードでは、DMX コンポーネントで割り当てられた特定フィクスチャパッチに対して、受信 DMX をリッスンできます。正しく受信した場合、イベントが実行され、フィクスチャパッチのすべてのチャンネル値と受信フィクスチャパッチを含む、受信パケットの情報を提供します。このイベントは、DMX コンポーネントで割り当てられたフィクスチャパッチに対して新しい値が受信されたときにのみ実行されます。

ピン | 説明 |
---|---|
Fixture Patch | DMX を受信するパッチ。 |
Value Per Attribute | DMX コンポーネントで割り当てられたフィクスチャパッチの属性に対するすべての正規化値です。 |
受信 DMX を Unreal Engine で受信するには、送信側は適切な IP アドレスを伝送する必要があります。この IP はプロジェクトに使用される IP であることが必要です。この IP は [Project Settings (プロジェクト設定)] > [Plugins (プラグイン)] > [DMX Plugin (DMXプラグイン) > [Interface IP Address (インターフェースのIPアドレス)] で設定できます。デフォルトでは、0.0.0.0 に設定され、オペレーティング システムで決定されるプライマリ ネットワーク インターフェース カードを選択します。
代替ソースから受信する場合は、IP アドレスを見つけ、DMX 送信ソースがネットワーク カードの IP サブネットにブロードキャストしていることを確認します。
例えば、ネットワークの IP アドレスが 192.168.1.100 だった場合、送信側は、Unreal Engine で受信するために、192.168.1.255 にブロードキャストする必要があります。最後の 255 は、ネットワーク インターフェース カードの IP サブネットへのブロードキャストを示しています。
Get DMX Attribute Values
Get DMX Attribute Values ブループリントは、入力フィクスチャタイプに対する、属性名と現在の値のマップを返します。ここで示すのは、既存のブループリント属性の例で、対象 DMX フィクスチャパッチから現在の DMX 値を取得できます。
GetDMXFixturePatch と GetDMXAttributeValues を組み合わせて使用して、ユーザーは [Details (詳細)] パネルで [Expose Attributes (属性を公開)] ボタンを使用して、選択パッチの属性を公開できます。これは指定フィクスチャパッチに対して利用できるすべての属性をリストし、現在の値を出力します。

代わりに、ユーザーはダイナミックに設定したフィクスチャパッチを入力する場合、前と同様に属性を公開できませんが、Out Attributes Map で Find 属性を呼び出すことで、取得する属性値を指定できます。以下の例を見てみましょう。以下の例を見てみましょう。
