NarraLeaf

ノード

組み込みノードカタログ。パレットの分類ごとに1ページ、各ノードのシグネチャを収録

組み込みカタログには、28 の分類にまたがる 655 個のノードがあります。分類とは、パレット内でナビゲートするためのグループ分けのことで、これらのページもエディターと同じ構成になっています。Studio の組み込みプラグインが追加するノードは、組み込みプラグインに別途まとめています。

ノードの読み方

各ノードは次のように記載されています。

Delay

blueprint.flow.delay · Latent

見出しの下の最初の行がそのノードの type id です——ドキュメントに保存される値であり、プラグインから登録する際に使う値でもあります。その後に、そのノードに当てはまるフラグが続きます。

フラグ意味
Pure副作用がなく、exec ピンを持ちません。出力が読み取られたときに計算され、Blueprint Value の中で使える条件の一つです。
Latent解決するまでグラフを一時停止します。Blueprint Value(Call Fn を除く)、インラインのストーリー値、分岐条件では提供されません。

Settings → General → Developer options(設定 → 一般 → 開発者オプション)がオンのときは、パレットの各ノードの行の右側にも type id が表示されます。

Pure であること自体は、そのノードが Blueprint Value の中で使えることを意味しません。それは別の、より狭い規則です:ノードは pure であり、かつ latent でなく、かつ許可された分類(Data、List、Math、Time、Text、Slider、Displayable、Element、Game、Localization)のいずれかに属していなければなりません。これに加えて、少数の個別の例外(Init と On Flush のヘッド、Skip Delay を除く latent でない Flow、ローカル変数へのアクセス、Memo、Call Fn、コメント、Return Value、Get Saved Var、および 5 つの Page の読み取り:Get Page Props、Get Page Param、3 つの Is Surface …)があります。widgetMain にスコープされた Self ノードは、フラグに関係なく除外されます。Blueprint Value の中からウィジェットに到達するには、Element リテラルと Element カテゴリーの読み取りノードを使います。

続いて、ピン表が示されます。

ピン方向型備考
inin · exec—
durationin · datafloat秒。カード上にリテラル値を入力できます。
completedout · exec—待機が終わると発火します。
tokenout · dataTimerSkip Delay に渡すと待機を途中で打ち切れます。

exec ピンは実行の流れを運び、data ピンは値を運びます。array<struct:nl.ending> のような型はエンディングの配列で、カードには Ending list(エンディングのリスト)と表示されます。構造体の一覧は構造体にあります。カード上にリテラル値を入力できます とは、接続を引く代わりにノードカード上に値を直接入力できるという意味です。ノードによっては動的ピンを持つものがあります。選択した変数、選んだ fn のシグネチャ、あるいは追加したケースから導出されるピンで、これらは決まった表を示せないため文章で説明されます。

利用可否

このカタログに載っているノードが、必ずしもパレットに表示されるとは限りません。次のフィルターが適用されます。

  • Blueprint Value。 Blueprint Value では、上の規則が認めるノードだけが提供されます。
  • インラインのストーリー値。 インラインのストーリー値と分岐条件は latent ノードを受け付けません。
  • オーナーとウィジェットの能力。 Self ノードは、その能力を持つウィジェットのブループリントにのみ表示されます。たとえば Set Slider Value は、Text ウィジェットのブループリントには提供されません。
  • 既存のバインディング。 Element ノードは、接続先となる互換性のある Element、Element Flush、Element Click のいずれかのノードがすでにグラフにある場合にのみ表示されます。
  • 項目コンテキスト。 Get List Item Index、Get List Item Key、Get List Item Count、Get List Item Props はエレメントがレンダリングしている項目を読み取るため、行がスコープに入りうる場所(List の項目テンプレート内にあるエレメントのブループリントなど)にのみ表示されます。Get Field はすべてのブループリントで表示され、そのような場所で Object を接続しない場合は現在の行を読み取ります。
  • Story Action ブループリント。 ストーリー行から呼び出されるブループリントには、実行中のゲームやそのインターフェースを操作するノードは提供されません。App、Localization、Network、Sound、Voice のノードはなく、Game のノードもほぼすべて提供されません。

互換性のある接続元が複数存在する場合でも、パレットにはそのノードが1つだけ表示されます。追加すると、接続元が1つだけならそこへ自動的に接続されます。複数ある場合は、対象の入力を未接続のまま残し、選択できるようにします。

同じ種類のノード

6 つの比較ノードや 4 つのキー入力の Head のように、1 つの操作の別の形にあたるノードがあります。パレットは、このようなノードの組を同じ種類のノードとしてまとめて表示します。

  • 一覧するとき。 Search nodes(ノードを検索)の欄が空のとき、同じ種類のノードは 1 行にまとまります。行には種類の名前と、その下に分類とノード数が表示されます(Math · 6 nodes(数学 · 6 個のノード)など)。行にポインターを合わせると、含まれるノードが表示されます。行を選ぶと、その種類の最初のノード(下の表で先頭にあるノード)が追加されます。Element ノードも同じようにまとめられ、紐づけられた要素ごとに 1 行になります。
  • 検索するとき。 検索すると、同じ種類のノードもそれぞれ 1 行ずつ表示されます。> または より大きい と入力すると Greater Than が見つかり、種類の名前(比較 など)を入力すると、その種類のノードがすべて表示されます。
  • 配置したノードを切り替えるとき。 同じ種類のノードにまとめられたノードのカードには、タイトルの横に ▾ ボタン Switch to another node of this kind(同じ種類の別のノードに切り替える)があります。押すと、その種類のうちこのブループリントに置けるノードが表示され、現在のノードにはチェックが付いています。別のノードを選ぶと、カードはその場でそのノードに変わります。

カードが同じ種類の別のノードに変わるときは、次のようになります。

  • 新しいノードに対応するピンがあり、そのピンがエッジを受け付ける場合、エッジは接続されたまま残ります。Set BGM Volume の bgmVolume へのエッジは、カードが Set SFX Volume に変わると soundVolume へのエッジになります。
  • 新しいノードが受け付けないエッジは削除されます。
  • 新しいノードに同じ設定がある場合、設定はそのまま残ります。Integer リテラルの 3 は、カードが Float に変わっても 3 のままです。それ以外の設定は削除され(On Key Down が Any Key Down に変わったときの、選んでいたキーなど)、新しいノードの設定は既定値から始まります。
  • カード上に入力した値は、対応するピンが同じ型の値を受け付ける場合はそのピンに移り、そうでない場合は削除されます。
  • Ctrl+Z(macOS では Cmd+Z)で、元のノードとそのエッジ、値が 1 ステップで元に戻ります。

まとめて表示されるのはパレットの中だけです。各ノードは自分の名前と type id をそのまま持ち、既存のグラフは変わりません。

種類ノード分類
On Key(キー入力のとき)On Key Down、On Key Up、Any Key Down、Any Key UpEvents
On Gamepad Button(ゲームパッドのボタン入力のとき)On Gamepad Button Down、On Gamepad Button Up、Any Gamepad Button Down、Any Gamepad Button UpEvents
Literal(リテラル)String、Integer、Float、Boolean、Color、Vector2D、Rect、JSON、NullData
Convert Type(型を変換)To String、To Integer、To Float、To Boolean、To JSONData
Check Type(型を調べる)Is String、Is Number、Is Boolean、Is Array、Is Object、Is NullData
Trim Whitespace(空白を取り除く)Trim、Trim Start、Trim EndData
Change Case(大文字・小文字を変える)To Lower Case、To Upper Case、CapitalizeData
Replace Text(文字列を置換)Replace、Replace AllData
Pad Text(文字で埋める)Pad Start、Pad EndData
Rounding(端数処理)Round、Floor、CeilMath
Random Number(乱数)Random Integer、Random FloatMath
Compare(比較)Equal、Not Equal、Greater Than、Greater Than Or Equal、Less Than、Less Than Or EqualMath
Get Preference(設定を取得)17 個:「設定」の節にある Get … ノードのうち Get Track Volume を除くすべて。先頭は Get Auto ForwardGame
Set Preference(設定を変更)17 個:「設定」の節にある Set … ノードのうち Set Track Volume を除くすべて。先頭は Set Auto ForwardGame
Get Save Info(セーブ情報を取得)Get Save Time、Get Save Playtime、Get Save Line、Get Save Story、Get Save Preview、Get Save MetadataGame
Get Text Style(文字のスタイルを取得)Get Font、Get Font Size、Get Font Weight、Get Text Color、Get Line Height、Get Text Align、Get Text Vertical Align、Get Wrap Mode、Get EffectsText、Element
Set Text Style(文字のスタイルを設定)同じ 9 つのプロパティの Set … ノードText、Element
Get Image Framing(画像の表示方法を取得)Get Image Fit Mode、Get Image Flip X、Get Image Flip Y、Get Image Crop RectImage、Element
Set Image Framing(画像の表示方法を設定)同じ 4 つのプロパティの Set … ノードImage、Element
Get Visible or Enabled(表示・有効状態を取得)1 種類のウィジェットの Get Visible と Get Enabled(Button、Container、Frame、Image、List、Slider、Switch、Text)。Element ノードでは Get Button Visible と Get Button Enabled、ほかのウィジェットも同様各ウィジェットのページ、Element
Set Visible or Enabled(表示・有効状態を設定)1 種類のウィジェットの Set Visible と Set Enabled、および対応する Element ノード各ウィジェットのページ、Element

Text Style、Image Framing、Visible or Enabled は、ウィジェット自身のノードと Element ノードとで別の種類になり、Visible or Enabled はさらにウィジェットの種類ごとに分かれます。カードの ▾ に表示されるのは、そのカードと同じ種類のノードだけです。

分類

ノード数は、パレットに表示されるノードの数です。同じ種類のノードは含まれるノードをすべて数えます。パレットの分類のチップに出る数は同じ種類のノードを 1 行として数えるため、これより小さくなることがあります。パレットから非表示になり、旧いグラフを動かすために残されているノードは、各分類のページに記載していますが、ノード数には含めていません。

分類ノード数内容
Events58エントリーポイント:ライフサイクル、入力、Surface の遷移、Broadcast。
Flow12分岐、ループ、順序制御、遅延。
Functions3fn の宣言、呼び出し、リターン。
Variables9ブループリント変数と永続変数の宣言と読み取り。
Data96リテラル、変換、述語、JSON、文字列、配列、構造体のフィールド。
Math25算術、丸め、ブール論理、比較。
Time15時刻、カレンダー、テキストとしての日付。
Game97ストーリー制御、ダイアログ、設定、セーブ、バックログ。
App31Surface のナビゲーション、ウィンドウ、アプリケーションのライフタイム。
Localization6ゲームのプレイヤー向けロケールと、プロジェクトの翻訳キー。
Network3HTTP リクエストとレスポンスの読み取り。
Displayable9ジオメトリ、外観バリアント、プロパティアニメーション。
Element137上記すべてを、自分自身ではなく接続された Element に対して行うもの。
Image16画像アセットとフィル。
Text28テキストの内容とタイポグラフィ。
Text Input3編集可能なテキストフィールド。
Button7ボタンのラベルとポインター。
Container6コンテナのレイアウトと子要素。
Frame8Frame が表示する Page と、その params。
List32実行時の項目、選択、スクロール、項目のコンテキスト。
Slider9値、範囲、スナップ。
Debug2ロギングとグラフ内コメント。
Input5プレイヤーがどのデバイスを使っているか、アクションが押され続けているかどうか、そしてゲームパッドのボタンとスティック。
Sound9インターフェース用の音声クリップの再生、それに再びアクセスするためのハンドル、そしてページの音楽。
Voice5収録されたセリフの再生と、現在有効な吹き替え言語。
Component1コンポーネントのある配置を別の配置と区別するパラメータ。
Switch9Switch ウィジェットのチェック状態、および有効・表示フラグ。
Video14動画ウィジェットの再生、一時停止、停止、再生位置の移動、および音量・消音・ループ・速さ。

このページの目次