分野別の詳説:参照したマニュアルの主要な仕組み・操作・設定を翻訳・要約・再構成した日本語解説です。全項目の逐語訳ではありません。確認順や例は編集上の補足です。手順から先に読み、必要なときに後半の仕組みの解説へ進めます。
この章の目標:面へ小さいCubeを配置。
準備:面を持つPlane・Geometry Nodes。

実践:面に小さな部品を散らす
ここではPlaneの上へ小さいCubeを配置します。寸法・密度は編集上の例で、画面操作を通して確認した作例ではありません。元のPlaneに面が存在すること、標準キーマップであることを前提にします。
- Planeを選び、Geometry Node EditorでNewを押してモディファイアーとノードグループを作ります。最初のGroup InputからGroup Outputへの接続を確認します。
- Addの検索からDistribute Points on Facesを追加し、Group InputのGeometryをMeshへつなぎます。Random方式でDensityを小さい値から設定します。単位は面積当たりの点数なので、面の大きさも結果へ関係します。
- Cubeノードを追加し、SizeのXYZを小さく設定します。たとえば各成分を0.1にする例が考えられます。元のシーンへCubeオブジェクトを追加する操作とは別です。
- Instance on Pointsを追加し、分布ノードのPointsをPointsへ、CubeのMeshをInstanceへつなぎます。そのInstancesをGroup OutputのGeometryへつなぎます。
- 向きも面に合わせるなら、分布ノードのRotationをInstance on PointsのRotationへつなぎます。平面では差が小さくても、曲面では法線方向が異なります。
- Random ValueをFloatにして最小・最大を設定し、Scaleへ渡すと倍率へばらつきを作れます。Seedを変えると別の配置・値になります。
- 元の面も表示するなら、Join GeometryへGroup InputのGeometryとInstancesを両方入れ、結果をGroup Outputへ渡します。インスタンスの出力だけでは元の面を含まない構成です。
- ViewerまたはSpreadsheetで点数とインスタンス数を調べます。必要な処理がない限り、この段階でRealize Instancesを入れる必要はありません。
成功の目安は、Densityで数、CubeのSizeで部品の元形状、Scaleで各配置の倍率、Seedで乱数が別々に変わることです。何も見えないなら、面を持つ入力、出力への接続、Selection、寸法、表示範囲を順に調べます。
生成・配置・変形の主要ノード
| ノード | 入力と出力の役割 | 主要な設定・制限 |
|---|---|---|
| Distribute Points on Faces | 面を持つMeshからPoints・Normal・Rotationを出す | RandomのDensity、Poisson DiskのDistance Min・Density Max、Seed。辺だけのメッシュでは分布できない |
| Instance on Points | Pointsと参照するInstanceから配置結果を作る | Selection、Rotation、Scale。Pick Instancesでは一覧から一つを選ぶ |
| Object Info / Collection Info | シーンの物体や集合を参照する | 元の変換と相対空間、インスタンスとして扱う設定を確認する |
| Join Geometry | 複数のジオメトリを一つの流れへまとめる | 重なる頂点を自動で溶接するわけではない |
| Realize Instances | 参照の配置を実ジオメトリへ変える | 対象のSelectionやDepth、増加する要素数・メモリを考える |
| Set Position | Geometryの位置を変える | Selection、Position、Offset。同じノード内のPositionとOffsetは同時評価される |
| Transform Geometry | 全体の移動・回転・倍率を変える | 要素ごとのフィールドで変えるSet Positionとは対象の考え方が違う |
| Extrude Mesh | 選択要素から形を延ばす | 頂点・辺・面の方式、個別の扱い、Offset。新たな面等の選択出力を後段に使える |
| Delete Geometry | Selectionに当たる要素を削除する | DomainとModeが、頂点ごと・面ごと・Instance全体などの意味を決める |
| Merge by Distance | 近い頂点等を結合する | 距離を大きくしすぎると部品の隙間も失う |
| Resample Curve | 長さや個数に基づいて制御点を作り直す | 点ごとの処理を均等にしたい場合に使う。元の制御点とは変わる |
| Curve to Mesh | カーブとProfile Curveから表面を作る | 断面、方向、半径、端のふさぎ方を確認する |
Pick Instancesは、Instance入力にある参照一覧からIndex等で選ぶ機能です。コレクション全体を毎回一セットずつ配置する構成と、部品を一個ずつ選ぶ構成を混同しません。必要な形が一つの参照としてまとめられているのかも確認します。
属性・サンプリング・選択の主要ノード
| ノード | 値の意味 | 使うときの前提 |
|---|---|---|
| Position / Normal | 評価先の位置・法線 | ノードを置いた時点で固定の値を保存するわけではない |
| Index / ID | 要素の順序・識別情報 | Indexは接続変更でずれる。IDが常に自動で存在するとは限らない |
| Named Attribute | 名前で保存された属性を読む | 名前・型・ドメインと存在を確認する |
| Store Named Attribute | フィールドの結果を名前付きで保存する | Geometry、Name、Value、型・Domain。組み込み属性の型等は自由変更できない |
| Capture Attribute | その時点の値を匿名属性として保持する | 出力されたGeometryの流れに保持する。上流や別系統の形からは読めない |
| Sample Index | 元Geometryの指定Indexの値を読む | Valueを元側で評価し、型とDomainを合わせる。無効Indexの扱いはClampへ関係する |
| Sample Nearest Surface | 別の面の近い位置から値を得る | 近さによる対応であり、同じ頂点番号を保証するものではない |
| Compare / Boolean Math | 条件の真偽を作る | SelectionがどのDomainで評価されるかを接続先から読む |
| Map Range / Math | 数値の範囲・演算を変える | 範囲外をClampするか、元の値を残すかを決める |
| Vector Math / Combine XYZ | 方向やXYZ成分を扱う | 距離・位置・方向の意味を区別する |
例としてPositionのZ成分をCompareでしきい値と比較し、その結果をSet PositionのSelectionへ渡すと、条件に合う位置だけを変えられます。同じSelectionをDelete Geometryへ渡す場合でも、DomainをFaceへ変更すれば面単位の評価になります。条件式だけを見ず、評価先も読みます。
実践:変形前の高さを保持する
- 最初のGeometryをCapture Attributeへ入れ、PointドメインでPositionのZなどを記録します。
- Capture Attributeから出たGeometryをSet Positionへつなぎ、変形を加えます。
- 後の処理で元の高さを使いたいときは、Positionを再び読むのでなく、Captureした出力を接続します。
- 同じ名前付き情報を材質など別の場所から使いたい場合は、Store Named Attributeで明示した名前へ保存する構成を選びます。
属性を生成したGeometryを迂回して別のGeometryを出力すると、保持したつもりの情報が結果へ来ない場合があります。属性の線と、実際に情報を運ぶGeometryの線を合わせて追います。
実践:反復と時間の蓄積を分ける
Repeat ZoneではIterationsを決め、前の反復から次へ渡すGeometryや数値をゾーンの入出力へ登録します。Iterationは0から始まる現在の反復番号です。ゾーン内部の結果を外へ使うには、Repeat Outputを経由します。
Simulation Zoneでは、最初にInputへ渡した状態から、各時刻の次の状態を計算します。たとえば位置へ速度とDelta Timeの積を足す構成では、速度が秒当たりの移動量、Delta Timeが時間刻みになります。毎フレーム固定距離を足す構成とは、FPSを変えた場合の意味が違います。
状態として残すGeometryや速度などをシミュレーションの項目へ含めます。匿名属性も、必要な状態へ明示して保持しないと伝わらない条件があります。ゾーン外から内部へ渡す値は各ステップで再評価されるため、初期値と毎回の入力を区別します。Simulation ZoneはToolコンテキストでは利用できません。
キャッシュの開始時点、再生順、変更後の再計算、ベイクの保存先を確認します。Repeatは一回の評価内の反復、Simulationは時間をまたぐ状態です。どちらも「繰り返し」という理由だけで置き換えられる機能ではありません。
仕組みと用語を調べる
ノードで形状処理を組み立てる
Geometry Nodesは、オブジェクトのジオメトリをノードの処理で変更する仕組みです。Geometry NodesモディファイアーにNode Groupを指定し、Geometry Node Editorで内容を編集します。Group Inputへ入るのは、そのモディファイアーより前の形です。Group Outputから出た結果は、スタックの次の処理へ渡ります。
最初の確認では、Group InputのGeometryをGroup Outputへ直結します。元の形が見えれば、処理を一つずつ間へ追加します。この確認順は編集上の補足です。出力へつながっていない枝に形を作っても、最終結果へは現れません。オブジェクトの種類と、ノードが扱うジオメトリの種類も確認します。
値とフィールドは異なる
一つの数値を渡す接続と、各要素について計算するフィールドを区別します。フィールドは、頂点や面などの入力を受けて結果を計算する手順です。Positionは単独で固定された座標一覧を保持する箱ではなく、接続先が評価するときのジオメトリから位置を読みます。
たとえばPositionを加工してSet Positionへ渡す構成を二段つなぐと、後の段では前の段で変わった位置を読む場合があります。同じフィールドへつないだことだけを理由に、同じ値が使われるとは考えません。変形前の値を保持したいときは、Capture Attributeなどで、その時点の値をジオメトリへ記録する方法があります。
属性は型とドメインを持つ
属性は、ジオメトリの各要素へ記録した情報です。Float、Integer、Boolean、Vector、Color、RotationやMatrixなどの型があり、型によって演算の意味が変わります。位置と方向は同じベクトル型でも意味が違い、色を数値へ変換する場合にも変換規則があります。
ドメインは情報をどの要素に持たせるかです。Pointはメッシュの頂点やカーブの制御点、Edgeは辺、Faceは面、Face Cornerは面の角、Splineはカーブ単位、Instanceはインスタンス単位です。UVが切れ目を持てるのは、同じ頂点に接する面の角へ異なる座標を持たせられるためです。
Named Attributeは名前で参照し、Store Named Attributeで保存できます。匿名属性はノードの接続を通じて参照します。別に作った無関係な形へ接続するだけでは転送できず、Sample IndexやSample Nearest Surfaceなどで対応を定める必要があります。Indexは接続変更で変わり得る要素番号であり、永続的な識別子と同じではありません。
点の生成とインスタンス
面へ物体を散らす処理は、配置する点を作る段階と、点へ形を配置する段階に分けます。Distribute Points on Facesが位置や向きを用意し、Instance on Pointsが参照する形を置きます。密度、Selection、回転、Scaleを別々に制御すると、どの段階で結果が変わったかを追えます。
インスタンスは元のジオメトリを参照し、位置などを個別に持ちます。同じ形を毎回複製するよりデータを共有できます。Realize Instancesは参照を実体へ変える処理で、メモリ使用量が増える場合があります。実体化せずに処理できるノードもあるので、常に最初へ置く必要はありません。個々の結果を別の形へ変える処理で必要かを判断します。
メッシュ・カーブ・点・ボリューム
Mesh Primitiveで基本形を生成し、Extrude Mesh、Subdivision Surface、Merge by Distance、Mesh Booleanなどで構造を加工できます。Set Positionは座標を変えますが、面の接続を新しく作る処理とは違います。材料の割り当てはSet Materialなどで行い、材質自体の光学的な設定はShader Editorで編集します。
カーブではResample Curveで点の配分を整え、Trim Curveで区間を切り、Curve to Meshで断面に沿う形を作れます。点群、ボリューム、Grease Pencilにも専用のノード群があります。名前が似ていても入力できるデータは異なり、必要に応じて変換します。法線、UV、トポロジーの読み取りは、それぞれ対応するノード群から探します。
数学・選択・再利用
Mathは数値、Vector Mathはベクトル、回転や行列のノードは向きと変換を扱います。CompareやBoolean Mathで条件を作り、Selectionへ渡すと対象を絞れます。Random Valueの乱数はSeedやIDの扱いが重要です。形の数が変わったときにも配置を安定させたいなら、どの識別情報を乱数へ使うかを確認します。
グループでは外へ公開する入力と出力を定めます。Bundleは異なる型を含む複数の値を一つの接続へまとめ、Closureは後から評価する処理を受け渡す仕組みです。どちらも単なるメッシュの結合とは異なります。ノードベースのツールは編集操作として使い、モディファイアーとして継続評価する構成とは用途を分けます。
時間・反復・シミュレーション
Repeat Zoneは処理を繰り返し、For Each Geometry Elementのゾーンは要素ごとの処理に使います。Simulation Zoneは前の状態から次の状態を計算する仕組みです。時間に依存する状態を持つため、あるフレームの結果を、そのフレームだけの入力から必ず再計算できるとは限りません。
参照EPUB版のSimulation NodesにはXPBD Solver、Cloth Dynamics、Hair Dynamics、Colliderなども収録されています。従来のPhysics設定と、これらを使うノード構成は別の入口です。どの方式の説明かを確かめてから、衝突、時間、力を設定します。
Bake NodeやSimulation Zoneのベイクでは中間ジオメトリを保存できます。ベイク前に.blendを保存し、キャッシュの場所と期間を決めます。メモリ上で見えている状態が、そのままディスクへ保存済みとは限りません。異なるBlender版間でのベイク互換性も保証されていません。
結果を調べる
Spreadsheetで要素数・属性名・型・ドメインを確認し、Viewerで途中結果を調べます。何も出ないときは、出力への接続、Selection、ジオメトリの種類、座標空間、インスタンスの扱いの順に切り分けます。性能を改善するには、細分化や実体化を必要な箇所へ限定し、重い計算を何度評価しているかを見ます。
検証した範囲
最終確認:2026年10月23日。Blender 5.2.2 LTS(macOS / Apple silicon)を背景実行し、次の内容を確認しました。
- Plane→面上の点分布→Cubeのインスタンス→元PlaneとのJoinを評価・レンダー。
背景実行ではPython APIを使用しています。マウス・キー入力、画面遷移、インストール、各入力機器での操作を通して確認したものではありません。上記にない応用・設定の組み合わせは実行未検証です。
出典と利用条件
この記事で参照したマニュアルの項目:
- はじめに
- フィールド
- Attributes(属性)
- Instances(インスタンス)
- 検証
- Baking(ベイク)
- Simulation Nodes
- Node Bundles
- Node Closures
- Geometry Nodes(ジオメトリノード)
- Distribute Points on Faces
- Instance on Points(ポイントにインスタンス作成)ノード
- Set Position(位置設定)ノード
- Delete Geometry(ジオメトリ削除)ノード
- Capture Attribute(属性キャプチャ)ノード
- Store Named Attributeノード
- Sample Index Node
- Repeat Zone
- Simulation Zone
- Realize Instances(インスタンス実体化)ノード
- Join Geometry(ジオメトリ統合)ノード
- Extrude Mesh Node
- Resample Curve(カーブリサンプル)ノード
- Curve to Mesh(カーブからメッシュへ)ノード
- Random Value Node
原著:Blender Documentation Team、Blender 5.2 Manual。底本はBlender 5.2 LTS ManualのEPUB版です。ファイル内の発行日時メタデータは2026年10月19日で、記事の検証日とは別です。原典のライセンス表示に従い、裏庭(Uraniwa)が翻訳・要約・再構成・説明の補足を行いました。この記事の本文・補足・独自の図解と作例画像はCC BY-SA 4.0で公開します。Blender公式による記事・推奨を示すものではありません。原典で適用対象外とされるロゴ・商標・アイコン・ソースコード・Pythonスクリプトなどには、この許諾は適用しません。