-Blenderで海シミュレーションをするときの手順と注意点-

3. 波間に浮かぶ

波間に浮かぶ漂流物や船を表現するにはどうすればよいでしょうか。他のオブジェクトの変形に追随してものを動かすには、「頂点に対して親子関係をつける」「shrinkwrap モディファイアまたはコンストレイント」を使う、といった方法がありますが、この場合には「Copy Location」「Copy Rotation」を Vertex Weight と一緒に使うのが相性が良いようです。

■ Vertex weight を使う

あらかじめ決められた位置に物を浮かべます。Vertex weight を利用するため前セクションで述べた理由から、generate では無く Displace で海面を作成します。

漂流物を置いて、その周囲に weight paint で重みをつけます。
漂流物の位置と回転、を「Copy Location」「Copy Rotation」を使って海面に追随するようにします。

このときに、Vertex weight を利用することで、海面の一部の運動に追随することができるのです。
ただし、ちょうど良い浮き具合だったり、スザンヌの向きが一発であうとは限らないので、回転やメッシュをちょっと修正する必要はあるかもしれません。波間に浮かぶスザンヌが実現できました。
あらかじめ Vertex weight を指定しましたが、動的に Vertex weight を動かせば、嵐の中を漕ぎ出す船のような表現も可能です。Dynamic Paint もしくは Vertex weight proximity などを利用することができます。
また、動的に Weight を設定して上書きしてしまえば、Generate の方法で海面を作ると、元のメッシュの Weight 情報が利用できない欠点も回避できるのです。

左は、位置を決定するためのダミーを置いて、Dynamic Paint を利用して Vertex weight が変化するようにしました。 嵐の海に乗り出すスザンヌが実現できます。

inserted by FC2 system