OFL Fixture
Open Fixture Library(OFL)形式のフィクスチャJSONを読み込み、灯体1台分のDMXフレームを出力するノードです。Load Fixture JSON... でJSONを選ぶとモード一覧が読み込まれ、選択モードのチャンネル定義に従って、各入力の値が対応するチャンネルへ書き込まれます。入力はすべて0〜1にクランプされ、DMX値は 値 × 255 で求めます。
- Address — スタートアドレス。1〜512にクランプ(内部では0起点に変換)
- Mode — フィクスチャJSONが持つモードから選択。モードのチャンネル数が下のラベルに表示されます
- 出力フレームのマスクは スタートアドレスから選択モードのチャンネル数分だけ 有効になります。だから複数台を Universe でマージしても互いのチャンネルを潰しません
- 3D Simulation(折りたたみ)— シミュレータ上の Position / Rotation / Scale と、Pan Range(既定540)/ Tilt Range(既定180)/ Pan Offset / Tilt Offset / Invert Pan / Invert Tilt。ここの値は3Dシミュレータの見た目にのみ影響し、DMX出力値は変えません
チャンネル種別ごとの変換
- Pan / Tilt / Dimmer / Zoom — 対応する入力をそのまま0〜255へ
- Red / Green / Blue — Color入力のR/G/B成分
- Cyan / Magenta / Yellow — R/G/Bの反転(
1 - 成分) - White — R/G/Bの最小値
- Color Wheel — ホイールの各エントリの色とColor入力のRGB距離を比べ、いちばん近いエントリのDMX値
- Strobe — Strobe入力が0.01未満なら定義中の
Openレンジの最小値、それ以上ならStrobeレンジの min〜max へ線形マッピング(該当レンジが無ければ入力値をそのまま0〜255へ)
Pan Fine / Tilt Fine / Amber / UV は常に0 を出力します(16bit細分と追加色は未実装)。16bit対応機は粗い方のチャンネルだけが動きます。
入力の既定値は Pan・Tilt・Zoom が0.5、Dimmer が1、Color が白です。フィクスチャJSONを読み込む前はマスクが全て無効な空フレームを出力するので、下流には何も反映されません。
読み込んだフィクスチャJSONはプロジェクトファイルの中に丸ごと保存されます。別のマシンで開いても元のJSONファイルは不要です。
入力ポート
| Port ID | 型 |
|---|---|
Pan | float |
Tilt | float |
Dimmer | float |
Color | Color |
Zoom | float |
Strobe | float |
出力ポート
| Port ID | 型 |
|---|---|
DMX Out | DMXFrame |
スクリプトから設定可能なメンバー
| パス | 型 |
|---|---|
panInput | float |
tiltInput | float |
dimmerInput | float |
zoomInput | float |
strobeInput | float |
Synapse Apps(スクリプティング)
await synapse.modules.create({ type: "ofl_fixture" }) 



