ノード一覧に戻る

式から真偽値

expression_bool

短い式を評価して真偽値を出力します

確認済み
解説あり

入力ポート

名前説明
X
x
Number
数値変数 x です
Y
y
Number
数値変数 y です
Vec
vec
Vec2
必要なら使える Vec2 変数です
フラグ
flag
Bool
必要なら使える Bool 変数です

出力ポート

名前説明
value
Bool
式を評価した結果の真偽値です

パラメータ

名前既定値範囲説明・選択肢
X
x
Float
0-10000–10000 / step 0.01

入力ピンが未接続の時に使う x の値です

Y
y
Float
0-10000–10000 / step 0.01

入力ピンが未接続の時に使う y の値です

Vec X
vec_x
Float
0-10000–10000 / step 0.01

vec 入力ピンが未接続の時に使う X 成分です

Vec Y
vec_y
Float
0-10000–10000 / step 0.01

vec 入力ピンが未接続の時に使う Y 成分です

フラグ
flag
Bool
false

flag 入力ピンが未接続の時に使う真偽値です

expression
Text
x > 0.5

true / false を返す式です。 記述例: - x < 0.5 - flag || x > 0.5 - length(vec) >= 4 入力ピンがつながっている時は、Inspector の値より入力ピンが優先されます。

概要

短い式で true / false を1つ作るノードです。compare + 論理演算のノードを 並べる代わりに、flag || x > 0.5 のような複合条件を1本の式で書けます。 結果は switch / gate の条件へ。

使い方のポイント

  • compare 1個で済む単純比較はそのまま compare、条件が2つ以上絡んだら こちらに1本化するとグラフが読みやすい
  • time / frame が使えるので「特定のフレーム範囲だけ true」のような 時間条件も式1本で書ける(例: frame % 4 == 0)
  • list_filter の predicate を単体で試す確認台としても使える(同じ式文法)

関連ノード

  • compare / value_match — 単純な判定はノードで
  • switch / gate — Bool の使い先
  • expression_float / expression_vec2 — 同じ式エンジンの他型版
  • list_filter — リスト版の条件式

まず大事なこと

  • ここで使う x, y, vec, flag は、変数パネルで作る変数とは別物です
  • これは Expression ノード自身の入力ピン名 です
  • x, y, vec_x, vec_y, flag は Inspector から直接入力もできます
  • 変数パネルの変数を使いたい時は、Variable Ref などで取り出して各入力ピンへつなぎます
  • 入力ピンに値がつながっている時は、入力ピンの値が Inspector の値より優先されます
  • 未接続の入力は次の値として扱われます
    • x, y = 0
    • vec = [vec_x, vec_y]
    • flag = false

使えるもの

  • 変数: x, y, vec, vx, vy, flag, time, frame, total_frames
  • 演算: + - * / %, == != < <= > >=, && || !
  • 関数: min, max, clamp, abs, floor, ceil, round, sign, sin, cos, tan, sqrt, pow, lerp, vec2, x, y, length, if

よく使う式

  • x < 0.5
  • flag || x > 0.5
  • length(vec) >= 4

具体例

例1: 閾値判定

  • x0.25
  • expression = x < 0.5
value = true

例2: 複合条件

  • flagfalse
  • x0.8
  • expression = flag || x > 0.5
value = true

どういう時に使うか

  • Switch や filter 条件へ入れる Bool を、軽い式だけで作りたい時
  • ListFilter の predicate を先に単体確認したい時

注意

  • && / || は結果が決まった時点で右辺を評価しません。if(条件, A, B) も 選ばれた側だけを評価するため、未選択側のエラーは結果に影響しません。
  • 数値規則は Math ノードと共通です。clamp の上下限は逆なら入れ替え、 sign(0) = 0% は非負のユークリッド剰余です。0除算・0による剰余・ 負数の sqrt はエラーになります。
  • bool 以外の値でも評価できますが、最終的には true / false に変換されます
  • 複雑な状態機械を書く用途には向きません
  • 式を入力中は、途中の不完全な文字列でもその場で評価されるので、一時的にエラー表示が出ることがあります
ノード一覧に戻る
式から真偽値 — PixPipeline ノード解説