Blender 水にオブジェクトを浮かせる方法

本ページには、プロモーションが含まれています。

f:id:TomoG:20190630222139j:plain

今回の記事では水の上にオブジェクト(水球やボート等)を置いたとき、水の上に浮いているように見せる方法をご紹介していきたいと思います。

参考動画

youtu.be

浮かせる方法

参考動画を参考にやることを本章でまとめていきたいと思います。

結果

f:id:TomoG:20190630230240g:plain

上図のような感じに、水上を浮くようにします。本記事ではこのように浮く動作を行う設定方法をご紹介していきたいと思います。

下準備

f:id:TomoG:20190630214336p:plain

下準備として、まずはオブジェクトを浮かせるための水・海を作ります。平面を作成後、モディファイヤーとして海洋を追加してください。

本記事の内容はアニメーションがないと分かりにくいため、海洋のアニメーションも作成します。

本記事では

フレーム:1 = 時間:1

フレーム:50 = 時間:10にしてアニメーションを行っています。

位置伝達用の平面設置

次に本題である浮かせる方法をご紹介していきます。まずは浮かせるに当たり、水の座標を伝達する平面を作成します。

f:id:TomoG:20190630214716p:plain

平面に細分割を行い、シュリンクラップというモディファイヤーを適用してください。

ターゲットには、下準備時に作成した海のオブジェクトを指定してください。

f:id:TomoG:20190630214905p:plain

次にこの平面の頂点グループを作成します。

頂点グループの+マークを選択し、出来上がった頂点グループを選択、その後平面を全選択した状態で割り当てを行ってください。

 

これで位置伝達用の平面の設定は完了となります。

f:id:TomoG:20190630223439p:plain

そして、位置伝達用の平面は見えなくしても問題ありません。なので、消しておいた方がこの平面を含めた見栄えを考えなくてので、消しておいた方がいいと思います。

・追記(2020/8/25)

この時、位置伝達用の平面を3DView上に表示するかどうかは個人の自由に設定をしてください。

しかし、レンダリングで表示するかどうかの設定については必ずOFFにしておいてください。そうでないとレンダリング結果に位置伝達用の平面が映ってしまうことになります。

f:id:TomoG:20200825135334p:plain

レンダリング結果で非表示にする方法として、上図の赤線のようにアウトライナー画面に出てくる位置伝達用のオブジェクトのレンダーで無効を選択してください。

このカメラアイコンに×がついたら、レンダーで無効になっていることになります。

・追記終了

位置を適用

次に浮かせるものを作成してください。本記事では球体を作成していますが、これは自由です。この作成した浮かせたいオブジェクトに下図のように設定していきます。

f:id:TomoG:20190630220719p:plain

上図のようにオブジェクトコンストレイントからトランスフォーム>位置コピーと回転コピーを追加してください。

追加した位置コピーと回転コピーのターゲットには、先ほど作成した位置伝達用の平面を選択、頂点グループには先ほど作成した位置伝達用の平面の頂点グループを指定してください。

これで完了となります。

余談

本記事で使用したシュリンクラップというモディファイヤーですが、シュリンクラップという意味は下記のようなものになります。

コトバンク-シュリンクラップ

このモディファイヤーも使い方によっては非常に便利になります。

3dcgmodel-info.com

krlab.info.kochi-tech.ac.jp

上記の記事が、このシュリンクラップというモディファイヤーを使用したものになります。衣類を作るときやリトポロジーに使えるため、非常に便利です。


本記事の内容は以上となります。

水上での動きをリアルにシミュレートをしようとした場合の入口は本記事の内容になるかと思います。

本記事は以上となります。お疲れ様でした。