デバッグ
グラフの実行中に1行を出力し、次に開く人のためにキャンバスにメモを残す
ノードは2つですが、実行されるのはそのうち1つだけです。Log(ログ)はゲームの実行中に読める1行を書き出します。Comment(コメント)はキャンバス上のテキストボックスにすぎず、ランタイムからは一切見えません。
Log
blueprint.log
1行書き出して先へ進みます。「この分岐は実際に実行されたのか、そのピンには何が入っていたのか」に答える、最も手軽な方法です。
| ピン | 方向 | 型 | 備考 |
|---|---|---|---|
in | in · exec | — | |
next | out · exec | — | 行の書き出し後に発火します。 |
value | in · data | string | カード上のリテラルを受け付けます。 |
この行はBlueprintチャンネルのコンソールパネルに、Blueprint Log のタグと info レベルで届きます。4096文字を超える部分は切り詰められ、… [truncated] と付記されます。同じ行は [Blueprint] という接頭辞付きで、ウィンドウの開発者コンソールにも全文がそのまま複製されます。
value はこのノードが持つ唯一の入力ではありません。カード上の入力追加コントロールを使うと、さらに string ピンが追加されます——in_1、in_2、……で、ラベルは Input 2 以降となります——これらは区切り記号なしで1行につなぎ合わされるため、"score: " と数値からは Concat ノードを挟まなくても score: 42 が得られます。上の表にはこのノードが最初から持つピンのみを載せています。文字列でない値はまず JSON エンコードされ、JSON で表現できない値はその素のままの文字列形式にフォールバックします。
いずれの入力も値に解決できないとき、この行は Log node reached になります——このデフォルト値がある理由は、Init を Log に直結するだけで、何も入力しなくてもあるパスが実行されることを証明できるようにするためです。空文字列も値として扱われ、空行として記録されます。
Log は event グラフと macro グラフでのみ利用できます。グラフの外の世界に影響を及ぼすため、function グラフではそれが許されません。
コンソールパネルは実行中のゲームから供給を受けています。エディタのキャンバス上にはその行を受け取るランタイムのホストが存在しないため、ウィンドウの開発者コンソールだけがそれを受け取ります——Log の出力は Dev Mode で確認してください。
Comment
blueprint.flow.comment · Pure
キャンバス上に置ける、サイズ変更可能なメモです。ピンを一切宣言しません——何もこれに接続できず、これが実行されることはなく、値を一切産出しません。event、function、macro の各グラフ、および Blueprint Value の内部でも合法です。誤動作しうるものが何もないためです。
このカード自体がそのままコメントであり、専用のインスペクタは存在しません。編集するのはこの箱そのものです。
カード上のフィールド
| フィールド | 内容 |
|---|---|
text | メモの本文。複数行可で、箱に直接入力します。 |
color | amber(既定)、cyan、violet、slate のいずれか。箱にホバーした際にヘッダーへ現れるスウォッチから選びます。 |
background | 既定でオン。オフにすると箱の塗りは残るが他のノードの下に描画されるようになります。これは複数のノードをひとまとめに覆うのではなく、枠で囲むための手段です。 |
width | 箱の幅。右下隅のハンドルをドラッグします。 |
height | 箱の高さ。同じハンドルからドラッグします。 |
型 ID は今も blueprint.flow.comment のままです。このノードが Debug カテゴリへ移る前に作られたグラフが読み込めるように、変更せず保たれています。パレットではカテゴリの側でこのノードを見つけることになります。