ロバメモ - 素人のUnity覚書と奮闘記

素人のUnity覚書と奮闘記

Blenderで遠浅の海を作る

完成画像

f:id:nico-taniku:20170511201145j:plain:w500

手順

1, Planeを作成する。

f:id:nico-taniku:20170511191315p:plain:w500

2, Modifier - Oceanを追加する。

f:id:nico-taniku:20170511191538p:plain:w500
追加すると、planeのサイズが大きくなって波打ったようになる。
f:id:nico-taniku:20170511191620p:plain:w500

3, 波アニメーションを作る。

1フレーム目・Timeのをことで I キーを打つ。
f:id:nico-taniku:20170511192312p:plain:w500

適当のフレームのところで、Time値を変更して、I キーを打つ。
f:id:nico-taniku:20170511192430p:plain:w500
f:id:nico-taniku:20170511192505p:plain:w500
これで再生すると、planeが波打つように動く。

4, Planeサイズを調整するには、sizeのところをいじる。

f:id:nico-taniku:20170511192629p:plain:w500

5, 波の高さを調節するには、WavesのScaleをいじる。

f:id:nico-taniku:20170511192836p:plain:w500

6, 海のマテリアルを作る

Diffuse , Specular , Shading 設定

黒にしてあるけど、テクスチャで設定するのでこれでOK。
Toonにしたけど、たまたまToonっぽいタッチにしたかっただけなので、適宜変更。
Emitは少しあげた方が夏っぽいかも。
f:id:nico-taniku:20170511193744p:plain:w500

Transparncy , Mirror 設定

Alpha値は、あとで砂地を作る場合は0にしておく。
海面だけで良い場合は適宜変更。
f:id:nico-taniku:20170511194050p:plain:w500

7, テクスチャを作る

色の設定

タイプはOceanを選択して、海の色をここで作る。
f:id:nico-taniku:20170511194408p:plain:w500

マッピング設定

Modifier Objectで、作成したPlaneを設定しておく。
マッピングはUVにしたけど、UV設定は特にしてない。
Sizeも適宜変更すべし。
f:id:nico-taniku:20170511194611p:plain:w500

手順7までで、一応、海面は作れる。
今回は、建物からの眺めなので、下の砂地が透けつつも、遠くになると透けずに海面のみが見えるようにしたいので、 砂地オブジェクトを下に作成しておいて、海面に透明度のブライドをつけることにした。

8, 砂地を作る

海面より下に砂地用のPlaneを作成する。
f:id:nico-taniku:20170511195354p:plain:w500

9, 砂地のマテリアル

適当に砂地の画像をテクスチャにしておく。
Emitを少しあげたほうがいいかも。
Shadow - Recive Transparent に必ずチェックを入れておくこと。じゃないと、海面の透過が反映されずに暗くなる。
f:id:nico-taniku:20170511195609p:plain:w500

10, 海面にテクスチャを追加

f:id:nico-taniku:20170511195734p:plain:w500

ブレンド設定

円形になるように BlendはSphericalを選ぶ。 色はなんでもOKで、真ん中が透明になるように設定する。
f:id:nico-taniku:20170511200008p:plain:w500

マッピング設定

Alphaだけにチェックを入れるようにしておく。
f:id:nico-taniku:20170511200148p:plain:w500

比較

Blendテクスチャを使わない海面だけにして、不透明にした場合
深さがある海になる。
f:id:nico-taniku:20170511201257j:plain:w500

Blendテクスチャを使わない海面を半透明にして、砂地を使った場合
砂地と海の隙間が見えてNG
f:id:nico-taniku:20170511201450j:plain:w500

Blendテクスチャを使った海面を透明にして、砂地を使った場合
遠浅の海になる。
f:id:nico-taniku:20170511201145j:plain:w500