NarraLeaf

画像

nl.image ウィジェットのアセット、フィルモード、切り抜き矩形、反転を読み書きする

これらのノードは、インターフェース用の画像ウィジェット nl.image を操作します——タイトル画面の絵、セーブスロットのサムネイル、装飾フレームなどです。ステージ画像やキャラクターの立ち絵、プレイ中にストーリーが表示するものとは一切関係ありません。それらはストーリーアセットであり、UI ウィジェットではありません。

規約

  • Self ノードのみです。 ここには Element 入力を取るノードはありません。対象は常に、そのブループリントを所有する nl.image です。接続されたエレメントに対して働くバージョンは Elementblueprint.element.image.* で、それぞれ element:nl.image 入力を持ち、グラフにすでに互換性のあるバインディングがある場合にのみ現れます。
  • グラフの種類。 取得系ノードは pure で、eventfunctionmacro のいずれのグラフでも、Blueprint Value の中でも動作します。書き込み系ノードは latent で、eventmacro でのみ動作します。
  • ImageAsset は構造化された値です{ kind: "imageAsset", assetId })。単なる id 文字列ではありません。null 許容形の ImageAsset|null は、null画像なしとして受け付けます。これらのピンに渡された素の string も、依然としてアセット id として読み取られます。これにより、この型が存在する前に保存されたグラフも動作し続けます。
  • 書き込みはウィジェットの imageFillmodeassetIdcropPlacementまたは imageFlipX / imageFlipY を書き換え、その後エレメントの flush をキューに入れます。書き込む値がすでにある値と一致する場合は、何も起きません——パッチも flush も発生しません。
  • 利用できない入力は現在の値にフォールバックします。 認識できない、または空のフィットモード、数値でない切り抜きパーセンテージ、未接続の真偽値は、いずれもそのプロパティをリセットせず、そのままにします。
  • ジオメトリ、不透明度、バリアントはここにはありません。 位置、サイズ、回転、不透明度は Displayable に属します。また、Default 以外の外観バリアントが Default のフィルモードや切り抜きを上書きすることは決してありません——そのため、半透明のバリアントに切り替えても画像が crop のまま固まることはありません。

Image Asset

blueprint.image.assetLiteral · Pure

アセットリテラルです。カードには現在のサムネイル、アセット名、または未設定の状態が表示されます。クリックすると画像アセットピッカーが開きます。

ピン方向備考
valueout · dataImageAsset

画像が選ばれていない場合、このノードは何も出力しません。これは ImageAsset|null 入力にとってはクリアするという意味になります。

Get Image Asset

blueprint.image.getImageAsset · Pure

ピン方向備考
assetout · dataImageAsset|nullウィジェットに画像がない場合は null です。

Set Image Asset

blueprint.image.setImageAsset · Latent

ウィジェットが指す画像を切り替えて flush します。フィルモードと切り抜き矩形はそのままです。

ピン方向備考
inin · exec
nextout · exec
assetin · dataImageAsset|nullカード上にリテラル値を入力できます。

未接続のままにすると、このピンはカード上で画像ピッカーとして展開されます。画像を選ぶとノードのパラメータに書き込まれ、クリアすると null が書き込まれます。接続すると、接続された値が優先されます。

Clear Image Asset

blueprint.image.clearImageAsset · Latent

ウィジェットの画像を取り除きます——Set Image Assetnull で呼ぶのと同じことを、ピンなしで行います。

ピン方向備考
inin · exec
nextout · exec

Get Image Fit Mode

blueprint.image.getFitMode · Pure

ピン方向備考
fitModeout · datastringcovercontainstretchcroptile のいずれかです。ウィジェットにまだフィルがない場合は cover です。

モード

モード画像がボックスを満たす方法
coverボックスを覆うように拡大縮小され、はみ出た部分は切り取られます。
containボックス内に収まるように拡大縮小され、余白ができます。
stretchアスペクト比を無視してボックスに引き伸ばされます。
crop切り抜き矩形によって配置されます。
tile元のサイズのまま左上から繰り返し並べられます。

Set Image Fit Mode

blueprint.image.setFitMode · Latent

現在のアセットと切り抜き矩形を保ったまま、画像がボックスを満たす方法を変更します。

ピン方向備考
inin · exec
nextout · exec
fitModein · datastringカード上にリテラル値を入力できます。5 つのモード以外の値は無視され、現在のモードが維持されます。

Get Image Crop Rect

blueprint.image.getCropRect · Pure

切り抜き矩形を読み取ります。4 つの数値は、元画像に対してではなくウィジェット自身のボックスに対するパーセンテージです:leftPct / topPct は画像の左上隅をボックス内のどこに置くかを、widthPct / heightPct は描画されるサイズを表します。したがって 0, 0, 100, 100——何も切り抜いていないときに得られる値——はボックスをちょうど満たすことを意味し、100 を超える値や 0 未満の値は、ボックスより大きい画像を表現する手段になります。

ピン方向備考
leftPctout · datafloat
topPctout · datafloat
widthPctout · datafloat
heightPctout · datafloat

Set Image Crop Rect

blueprint.image.setCropRect · Latent

ピン方向備考
inin · exec
nextout · exec
leftPctin · datafloatカード上にリテラル値を入力できます。
topPctin · datafloatカード上にリテラル値を入力できます。
widthPctin · datafloatカード上にリテラル値を入力できます。
heightPctin · datafloatカード上にリテラル値を入力できます。

このノードはフィルモードも crop に設定します。そうする必要があります:配置矩形を読み取るのは crop モードだけで、他のモードではこの 4 つの数値は保存されても無視されるためです。以前のモードに戻したい場合は、続けて Set Image Fit Mode を置いてください。

Get Image Flip X

blueprint.image.getFlipX · Pure

ピン方向備考
flipXout · databoolean

Set Image Flip X

blueprint.image.setFlipX · Latent

画像を中心を軸に左右反転します。反転するのは画像コンテンツのレイヤーだけです——ウィジェットのボックス、枠線、子要素には影響しません。

ピン方向備考
inin · exec
nextout · exec
flipXin · databoolean

Get Image Flip Y

blueprint.image.getFlipY · Pure

ピン方向備考
flipYout · databoolean

Set Image Flip Y

blueprint.image.setFlipY · Latent

画像を中心を軸に上下反転します。

ピン方向備考
inin · exec
nextout · exec
flipYin · databoolean

Get Visible

blueprint.image.getVisible · Pure

ピン方向備考
visibleout · databoolean

これは Displayable が visible プロパティキーとして公開しているのと同じ可視性です——1 つの値を、2 通りの方法で読んでいます。ウィジェットをレンダーツリーから取り除かずに非表示にしたい場合は、代わりに Displayable の Set Display を使ってください。

Set Visible

blueprint.image.setVisible · Latent

ピン方向備考
inin · exec
nextout · exec
visiblein · databoolean

Get Enabled

blueprint.image.getEnabled · Pure

ピン方向備考
enabledout · databoolean

Set Enabled

blueprint.image.setEnabled · Latent

ウィジェットのインタラクションのオン・オフを切り替えます。これは内部の無効化機構にマッピングされます。作者向けに公開された interactionDisabled プロパティはありません。

ピン方向備考
inin · exec
nextout · exec
enabledin · databoolean

このページの目次