ニッチなblender手記

世の中には自分に似た人が3人いるとされています。その人達へと情報共有するために主にblenderの記事を書いていきます。

loose usage about The Grove (Auto Prune)

概要

ここでは The Grove アドオンの Auto Prune 機能に絞って記述する。

参考

THE GROVE - 3D TREE GROWING SOFTWARE

利用環境

枝の刈り込み (Prune, auto prune)

The Grove - Prune によれば、 Auto Prune が処理を実行する条件は大きく3つ存在する。

  1. The tree itself drops shaded and low power branches all the time.
  2. Automatic pruning of the lower base will save you a lot of time.
  3. Manual pruning allows you to cut individual branches or many branches at once by drawing cutting lines.

それぞれ大まかに判断すると、

  • 陰、日照量 (Shade)
  • 高度、低い位置にある枝 (Automatic pruning of the lower base)
  • 手動剪定 (Prune)
    • 基本操作の時に画面上で切り取る枝を指定して剪定したが、その条件がこれに該当。

手動剪定 (Prune) 機能は基本操作で既に実施済みなので割愛し、陰、日照量 (Shade) による枝の選定は別項で取り上げる。

そのため、ここでは 高度、低い位置にある枝 (Automatic pruning of the lower base) のみをパラメータ内容を確認していく。

高度、低い位置にある枝 (Automatic pruning of the lower base)

この項目に関しては、下図のように The Grove は Auto Prune として独立したグループとして設定している。

f:id:r9aArrowhead:20210122200537j:plain

名前で大体予想がつくので、先んじて比較対象用のオブジェクトを用意していく。

f:id:r9aArrowhead:20210122200544j:plain

Low

この処理は、木全体の高さが指定した値の2倍に達した時、指定した高さより低い位置の枝を切り落とす 処理となっている。
そのため、木の上半分は必ず枝が残る という現象が伴う点に注意。

まずは Low から実験。 デフォルトでは 3m となっているので、キリよく 5m へ変更して実行。

f:id:r9aArrowhead:20210122200551j:plain

予想だと5mぐらいの高さからしか枝が残らないのかと思っていたが・・・
今度は思いきりよく 10m で実行。

f:id:r9aArrowhead:20210122200557j:plain

期待したのは枝が全部なくなっているぐらいの勢いだったのに、結構拍子抜けする結果である。

というわけで、今度は思い切って下限の 1m を確認してみる。

f:id:r9aArrowhead:20210122200604j:plain

下限に関しては普通に機能していると思われる。

ドキュメントを確認すると、以下のような条件があることが分かった。

Auto Prune > Low is a handy automatic pruning tool that performs its work each year. Low lets you define a height up to where the base should be cleared. It gradually kicks in, when the tree grows higher than the set height. So a smaller tree will not be pruned. Only when the tree grows to twice the height, it’s base will be cleared to the full Low height. Keep Thick will keep thicker branches.

要は Lowで設定した値よりも木の高さが高くなった場合のみ、設定した高さまで枝を切り落とす ということになる。
言い換えればここのパラメータは 木の高さ / 2 までの高さまでしか剪定されないことになる。

改めて上の図を見てみると、Low の値を上げても剪定される枝の上限は木の高さの半分ぐらいまでに留まっている。
下限については、設定した値よりも木の高さが十分に高かったために機能したにすぎない。

と、いうわけで・・・

f:id:r9aArrowhead:20210122200610j:plain

はい、20mまで成長させました。樹齢45年らしい。
改めて、 Low の値を 10m にして木を再生成してみると下図のような結果となった。

f:id:r9aArrowhead:20210122200618j:plain

うん、まあそれっぽくはある。
微妙に指定した範囲の前後で処理されていない枝もある感じだが、概ね結果は予測通りとなった。

Keep Thick

名前の通りで、 Thick (厚さ = 枝の太さ) が指定値以上の枝は切り落とさずに残したままとなる。
注意しなければならないのは、 木の枝は基本的に幹よりも太くなることはないため、木の幹の太さよりも太い数値を入力しても効果は発揮しない

このパラメータは以下の2点に気を付けて設定すること。

  1. 木の幹よりも低い値を設定して利用する
  2. 優先順位が Keep Thick > Low となっていることに注意する

設定値を少しずつ変更して場合の結果が下図の通り。 3m にした時の処理結果に注目

f:id:r9aArrowhead:20210122200624j:plain f:id:r9aArrowhead:20210122200632j:plain f:id:r9aArrowhead:20210122200639j:plain f:id:r9aArrowhead:20210122200646j:plain f:id:r9aArrowhead:20210122200653j:plain

Keep Thick: 3m の時が分かりやすいが、確かに指定した値ぐらいの枝は Low: 5m の条件を満たしているにも関わらず残ったままとなっている。
Low の条件よりも Keep Thick の条件の方が優先されることが分かる。