前回の続きです。
ソフトボディセルフコリジョン:
頂点に球状の領域を持たせ、球同士の衝突の判定を有効にする。
使用するには、ソフトボディエッジ>コリジョン>辺がオンになっている必要がある。
ソフトボディセルフコリジョン>コリジョンボールサイズの計算:
頂点に持たせる球状領域の半径の計算方法を設定する。
マニュアル:
辺の長さによらず、自分で設定した値(単位はBU(ブレンダーユニット))を使用する。
平均:
辺の長さの平均値を使用する。
最小:
辺の長さの最小値を使用する。
最大:
辺の長さの最大値を使用する。
最小最大平均:
辺の長さの最小値と最大値の平均値を使用する。
ソフトボディセルフコリジョン>ボール>サイズ:
コリジョンボールサイズの計算がマニュアルなら、球状領域の半径を、
それ以外なら、計算された値(平均値など)の係数を設定します。
ソフトボディセルフコリジョン>ボール>剛性:
不明。
大きくすると強く反発するようだ。
減速が1の場合は効果がない。
ソフトボディセルフコリジョン>ボール>減速:
球状領域内に侵入した球状領域を持つ頂点に働く反発力を弱める量。
小さくするほど反発力は大きくなり、大きくするほど反発力は小さくなる。
大きすぎると十分に反発せず自己交差を起こし、
小さすぎると過剰に反発して破綻する原因になる。
2013/06/11
2013/06/09
Blenderの軟体シミュレーションについて(その3)
前回の続きです。
ソフトボディソルバー>ステップサイズ>最小ステップ:
フレームあたりの最小ステップ数を設定する。
コリジョンがうまくいかない場合はこの値を大きくすると動作が安定する。
ソフトボディソルバー>ステップサイズ>最大ステップ:
フレームあたりの最大ステップ数を設定する。
エラー上限、最小ステップと共に設定することで、
計算時間が極端に長くならずに良い結果が得られるようになる。
ソフトボディソルバー>ステップサイズ>オートステップ:
ステップ数の決定に速度を使用する。
ステップ数は状況に合わせて最小ステップと最大ステップの間で動的に変化するようになる。
ソフトボディソルバー>エラー上限:
コリジョンとステップ数を設定する際の不正確性を設定する。
この値を小さくすることで、適切なステップ数が設定されるようになるが、
ステップ数が大きくなる原因にもなる。
(正確な計算のためにステップ数が増やされるという意味であり、悪いことではない。)
ソフトボディソルバー>ヘルパー>チョーク:
コリジョンオブジェクト内に侵入した頂点を減速させる量。
ソフトボディソルバー>ヘルパー>ファジー:
不明。
ソフトボディソルバー>診断>コンソールに出力:
ソルバーの進行具合をフレームごとにコンソールに表示する。
ソフトボディソルバー>診断>概算行列:
不明。
個人的に推奨する設定方法を以下に示す。
続きは後で説明したいと思う。
ソフトボディソルバー>ステップサイズ>最小ステップ:
フレームあたりの最小ステップ数を設定する。
コリジョンがうまくいかない場合はこの値を大きくすると動作が安定する。
ソフトボディソルバー>ステップサイズ>最大ステップ:
フレームあたりの最大ステップ数を設定する。
エラー上限、最小ステップと共に設定することで、
計算時間が極端に長くならずに良い結果が得られるようになる。
ソフトボディソルバー>ステップサイズ>オートステップ:
ステップ数の決定に速度を使用する。
ステップ数は状況に合わせて最小ステップと最大ステップの間で動的に変化するようになる。
ソフトボディソルバー>エラー上限:
コリジョンとステップ数を設定する際の不正確性を設定する。
この値を小さくすることで、適切なステップ数が設定されるようになるが、
ステップ数が大きくなる原因にもなる。
(正確な計算のためにステップ数が増やされるという意味であり、悪いことではない。)
ソフトボディソルバー>ヘルパー>チョーク:
コリジョンオブジェクト内に侵入した頂点を減速させる量。
ソフトボディソルバー>ヘルパー>ファジー:
不明。
ソフトボディソルバー>診断>コンソールに出力:
ソルバーの進行具合をフレームごとにコンソールに表示する。
ソフトボディソルバー>診断>概算行列:
不明。
個人的に推奨する設定方法を以下に示す。
- 最小ステップを0、エラー上限を0.001にし、オートステップをオンにする。
(但し、頂点が多い場合はエラー上限を上げたほうがいいかもしれない。) - 最大ステップを設定し、異常な結果が得られる場合は最大ステップを大きくする。
- 最大ステップが非常に大きな値であるのにもかかわらず異常な結果が得られる場合は、
最小ステップを大きくし、最大ステップを設定し2に戻る。 - それでも異常な結果が得られる場合は、パラメータの設定を見直す。
続きは後で説明したいと思う。
Blenderの軟体シミュレーションについて(その2)
前回の続きです。
未知のパラメータについては、後で調べます。
ソフトボディエッジ:
辺にばねを適用する。
ソフトボディエッジ>ばね>引く:
辺が伸びた時の縮む力を設定する。
ステップ数に対して大きすぎる値を指定すると破綻するので注意が必要。
ソフトボディエッジ>ばね>押す:
辺が縮んだ時の伸びる力を設定する。
ステップ数に対して大きすぎる値を指定すると破綻するので注意が必要。
ソフトボディエッジ>ばね>減衰:
変形させる力を減衰させる。
ソフトボディエッジ>ばね>プラスチック:
不明。
ソフトボディエッジ>ばね>曲げ:
エッジのなす角を維持しようとする力の量を設定する。
0で無効、重さに対して適当な値を設定すると、
ゼリーのようにぷるぷるした動きをするようになる。
重さに対して十分小さい値を設定すると、曲げる力に負けて、潰れるようになる。
逆に、十分大きい場合は、ほとんど変形しなくなる。
ソフトボディエッジ>ばね>長さ:
不明。
不適切な値を設定すると破綻する。
0で無効。
ソフトボディエッジ>ばね(頂点ウェイト):
不明。
ソフトボディエッジ>四角面の対角線:
不明。
ソフトボディエッジ>四角面の対角線>せん断:
不明。
ソフトボディエッジ>空気力学>シンプル/揚力:
不明。
ソフトボディエッジ>空気力学>強さ:
不明。
ソフトボディエッジ>コリジョン>辺:
辺に対するコリジョンを有効にする。
ソフトボディセルフコリジョンを使用する場合はオンにする必要がある。
ソフトボディエッジ>コリジョン>面:
面に対するコリジョンを有効にする。
続きは後で解説したいと思う。
未知のパラメータについては、後で調べます。
ソフトボディエッジ:
辺にばねを適用する。
ソフトボディエッジ>ばね>引く:
辺が伸びた時の縮む力を設定する。
ステップ数に対して大きすぎる値を指定すると破綻するので注意が必要。
ソフトボディエッジ>ばね>押す:
辺が縮んだ時の伸びる力を設定する。
ステップ数に対して大きすぎる値を指定すると破綻するので注意が必要。
ソフトボディエッジ>ばね>減衰:
変形させる力を減衰させる。
ソフトボディエッジ>ばね>プラスチック:
不明。
ソフトボディエッジ>ばね>曲げ:
エッジのなす角を維持しようとする力の量を設定する。
0で無効、重さに対して適当な値を設定すると、
ゼリーのようにぷるぷるした動きをするようになる。
重さに対して十分小さい値を設定すると、曲げる力に負けて、潰れるようになる。
逆に、十分大きい場合は、ほとんど変形しなくなる。
ソフトボディエッジ>ばね>長さ:
不明。
不適切な値を設定すると破綻する。
0で無効。
ソフトボディエッジ>ばね(頂点ウェイト):
不明。
ソフトボディエッジ>四角面の対角線:
不明。
ソフトボディエッジ>四角面の対角線>せん断:
不明。
ソフトボディエッジ>空気力学>シンプル/揚力:
不明。
ソフトボディエッジ>空気力学>強さ:
不明。
ソフトボディエッジ>コリジョン>辺:
辺に対するコリジョンを有効にする。
ソフトボディセルフコリジョンを使用する場合はオンにする必要がある。
ソフトボディエッジ>コリジョン>面:
面に対するコリジョンを有効にする。
続きは後で解説したいと思う。
2013/06/08
Blenderの軟体シミュレーションについて
Blenderには軟体シミュレーション(Softbody)があるが、
探してみてもパラメータについて解説しているサイトがないので、
それについて解説して行きたいと思う。(実際には自分用のメモにするつもりだが)
ソフトボディ>オブジェクト>摩擦:
オブジェクトの頂点が移動するときに掛かる摩擦力。
この値を大きくすると、変形がゆっくりになる。
ソフトボディ>オブジェクト>重さ:
オブジェクトの質量のはずだが、詳細不明。
重力下で重さを0にすると動かないのは当然だが、
0に近い値を設定すると何故か動きが非常にゆっくりになるので注意が必要。
ソフトボディ>質量:
頂点ウェイトを使用して各頂点の重さを設定できる。
ソフトボディ>シミュレーション>速度:
シミュレーションの速度を設定する。
続きは後で解説したいと思う。
探してみてもパラメータについて解説しているサイトがないので、
それについて解説して行きたいと思う。(実際には自分用のメモにするつもりだが)
ソフトボディ>オブジェクト>摩擦:
オブジェクトの頂点が移動するときに掛かる摩擦力。
この値を大きくすると、変形がゆっくりになる。
ソフトボディ>オブジェクト>重さ:
オブジェクトの質量のはずだが、詳細不明。
重力下で重さを0にすると動かないのは当然だが、
0に近い値を設定すると何故か動きが非常にゆっくりになるので注意が必要。
ソフトボディ>質量:
頂点ウェイトを使用して各頂点の重さを設定できる。
ソフトボディ>シミュレーション>速度:
シミュレーションの速度を設定する。
続きは後で解説したいと思う。
登録:
投稿 (Atom)