概要
バリアント候補の一覧から1件を番号で選んで取り出すノードです。
variant_range / seed_range が作った候補を index でカチカチ切り替えて、
「どの値が良いか」を目で見比べるのが主な仕事です。
使い方のポイント
- 比較検討の基本形:
variant_range → variant_select → variant_value_get → 値を使う側。indexを回して選び、snapshotのキーを型付き値へ戻して適用する - 値だけ欲しいなら
values出力(Map)が手軽。名前やお気に入り状態も 一緒に出るので、候補管理UIのような使い方もできる - 全候補を一括で出したいなら
batch_render。variant_select は 「1件ずつ確認する」側の道具
関連ノード
variant_range/seed_range— 候補の生成元batch_render— 全候補の一括出力variant_value_get— 選択したsnapshot/valuesから型付き値を取り出すvalue_select— バリアントを介さない単純なN択cartesian_product— 多軸候補の展開
まず大事なこと
VariantSelectは、候補を 1 件だけ選ぶ ノードです- ただし 1 件選ぶだけでなく、その候補を 見やすい形に分解して返す のがポイントです
出力の見方
| 出力 | 何が入るか | どう使うか |
|---|---|---|
record |
候補の完全な保存形 | 保存 UI や名前付き運用 |
snapshot |
key=value の軽い形 |
BatchRender など後段へ渡す |
values |
snapshot の中身だけを展開した Map | 値だけ見たい時 |
name |
候補名 | 一覧表示やラベル表示 |
favorite |
お気に入り状態 | UI 表示や管理 |
count |
候補総数 | インデックス制御や表示 |
まずはこの例
前段に VariantRange を置いて、次の設定で候補を作ったとします。
key = valuestart = 0end = 1count = 5
候補はこうです。
[0.0, 0.25, 0.5, 0.75, 1.0]
ここで VariantSelect.index = 2 にすると、3 件目の 0.5 が選ばれます。
record
{
"version": 1,
"id": "range:value:2",
"name": "value=0.500",
"favorite": false,
"snapshot": {
"version": 1,
"values": { "value": 0.5 }
},
"recipe": {
"version": 1,
"kind": "range",
"label": "value",
"parameters": {
"key": "value",
"start": 0.0,
"end": 1.0,
"count": 5,
"value_type": "Float"
}
},
"note": null
}
snapshot
{
"version": 1,
"values": { "value": 0.5 }
}
values
{ "value": 0.5 }
name / favorite / count
name = "value=0.500"
favorite = false
count = 5
よくある使い方
VariantRangeやSeedRangeで作った候補から 1 件選ぶindexを動かして候補を見比べるvaluesを downstream へ渡して値だけ使う
注意
- 入力候補数に応じて Inspector の
index上限が自動調整されます - 空リストの場合は
count=0だけ返し、他出力は流しません