はじめに
KJ Procedural Tree Designerは、BlenderのNメニューから、樹木の幹・枝・根・樹皮をパラメータで生成・調整するAdd-onです。
このAdd-onでは、樹木の形を固定メッシュとして作るのではなく、幹の高さ、太さ、枝分かれ、根の広がり、樹皮の凹凸などを設定値から生成します。
現在の開発方針では、v0.2.5を基準に戻し、Geometry NodesのCurve to MeshノードのScale値を太さ制御の目的変数として扱う方向が重要です。v0.2.5のソースでは、Add-on情報としてBlender 5.1対象、バージョン0.2.5、Nパネル配置が定義されています。
樹木の幹・枝・根のデザイナー,葉っぱのデザイナーをAdd-onで作ったので,図のような樹木をデザインしてみた.

このAdd-onでできること
KJ Procedural Tree Designerでは、以下のような樹木デザインを作れます。
・太い幹を持つ大木
・枝分かれした枯れ木風の樹形
・地面に広がる根
・表皮の凹凸や縦筋を持つ樹皮
・枝数、根数、分岐階層を調整した樹形
・Formulaモデルを残しながらGeometry Nodesで編集する樹木
主な目的は、城、森、盆栽、ファンタジー背景、ゲーム背景、アニメ背景などで使える樹木パーツを、手作業ではなくパラメータで効率よく作ることです。
基本構造
このAdd-onは大きく分けて、次の2つの仕組みで動きます。
1. Formula Reference
Pythonの数式モデルで幹・枝・根の中心線を生成する基準モデル
2. Live GN Designer
Geometry Nodesでカーブを太さ付きメッシュへ変換し、樹皮などを編集するモデル
Formula Referenceは、樹木の原形モデルです。
Live GN Designerは、その原形をもとに、Geometry Nodesで編集しやすくした表示・編集用モデルです。
Geometry Nodes Modifierは、ノードグループを使ってオブジェクトの形状を生成・変形するBlender標準機能です。
インストール方法
- Blenderを起動します。
- メニューから以下を開きます。
Edit
→ Preferences
→ Add-ons
Install from Diskを押します。kj_procedural_tree_designer_XXXX.pyまたはZIP版を選択します。- Add-on一覧で
KJ Procedural Tree Designerを有効化します。 - 3D Viewportで
Nキーを押します。 - 右側のNメニューに
KJ Treeタブが表示されます。
旧版を入れている場合は、先に旧版を無効化・削除してからBlenderを再起動してください。
基本的な使い方
1. 新しい樹木を作成する
NメニューのKJ Treeタブを開き、次のボタンを押します。
New Formula + Live GN Tree
これにより、樹木のControllerと、幹・枝・根の生成データが作成されます。
2. 幹を調整する
Trunkセクションで、幹の基本形状を調整します。
Tree Height
Base Radius
Top Radius
Trunk Segments
Taper
Lean Direction
Lean Amount
Main Bend
Irregularity
Trunk Twist
Base Flare Noise
各項目の意味は次の通りです。
| 項目 | 内容 |
|---|---|
| Tree Height | 樹木全体の高さ |
| Base Radius | 幹の根元の太さ |
| Top Radius | 幹の先端側の太さ |
| Trunk Segments | 幹の分割数 |
| Taper | 根元から先端への細くなり方 |
| Lean Direction | 幹が傾く方向 |
| Lean Amount | 幹の傾き量 |
| Main Bend | 幹全体の曲がり |
| Irregularity | 幹の不規則な揺らぎ |
| Trunk Twist | 幹のねじれ |
| Base Flare Noise | 根元の膨らみの不規則性 |
重要: 現在の開発では、Base Radiusなどの太さ制御は、Geometry Nodes内のCurve to MeshノードのScaleに直結させる方針が最も安定すると考えています。Set Curve Radiusも曲線の半径を制御するノードですが、提示されたノード構成ではCurve to Mesh側のScaleが実際の直径に強く影響しているため、ここを操作パネルの目的変数にする方針です。Set Curve Radiusはカーブの半径を制御し、Curve to Meshのプロファイルサイズに関係するノードです。
3. 枝を調整する
Primary Branchesでは、主枝の本数や発生位置を調整します。
Enable Branches
Primary Branch Count
Start Height
End Height
Branch Length
Length Random
Radius Ratio
Upward Bias
Horizontal Spread
Rotation Random
Droop
Segments per Branch
| 項目 | 内容 |
|---|---|
| Enable Branches | 枝を生成するか |
| Primary Branch Count | 主枝の本数 |
| Start Height | 枝が出始める高さ |
| End Height | 枝が出る上限高さ |
| Branch Length | 枝の長さ |
| Length Random | 枝長さのランダム性 |
| Radius Ratio | 枝の太さ比率 |
| Upward Bias | 枝の上向き傾向 |
| Horizontal Spread | 横方向への広がり |
| Rotation Random | 周方向配置のランダム性 |
| Droop | 枝先の垂れ |
| Segments per Branch | 枝1本あたりの分割数 |
4. 子枝を調整する
Child Branchesでは、枝からさらに枝分かれする構造を設定します。
Branch Levels
Children per Branch
Child Length Ratio
Child Radius Ratio
Split Angle
Level Randomness
Tip Curl
Maximum Branches
| 項目 | 内容 |
|---|---|
| Branch Levels | 枝分かれの階層数 |
| Children per Branch | 1本の枝から出る子枝数 |
| Child Length Ratio | 子枝の長さ減衰 |
| Child Radius Ratio | 子枝の太さ減衰 |
| Split Angle | 分岐角度 |
| Level Randomness | 階層ごとのランダム性 |
| Tip Curl | 枝先のカール |
| Maximum Branches | 枝の最大生成数 |
枝が多すぎると処理が重くなるため、Branch LevelsとMaximum Branchesは小さめから調整してください。
5. 根を調整する
Rootsでは、地面に広がる根を設定します。
Enable Roots
Primary Root Count
Root Length
Root Radius Ratio
Radial Spread
Downward Bias
Surface Follow
Root Irregularity
Segments per Root
Root Levels
Children per Root
Root Length Decay
Root Radius Decay
Root Split Angle
Root Flatten
Buttress Strength
Tip Depth
Root Surface Depth
Maximum Roots
| 項目 | 内容 |
|---|---|
| Enable Roots | 根を生成するか |
| Primary Root Count | 主根の本数 |
| Root Length | 根の長さ |
| Root Radius Ratio | 根の太さ比率 |
| Radial Spread | 放射状の広がり |
| Downward Bias | 下方向への潜り込み |
| Surface Follow | 地表追従の強さ |
| Root Irregularity | 根の蛇行 |
| Root Levels | 側根の階層数 |
| Children per Root | 根から出る側根数 |
| Root Flatten | 根断面の扁平率 |
| Buttress Strength | 根元の板根・膨らみ |
| Maximum Roots | 根の最大生成数 |
提示されたノードでは、RootのCurve to MeshノードのScale = 0.100が実質的なRoot直径に効いている可能性があります。したがって、今後の修正では、Root Radius操作値をこのScaleに直結する設計が有力です。


コメントを残す