blenderで作った部屋に、unityでガラス透過などのマテリアル設定してVRで見てみた備忘録

3Dモデリング
※記事内に広告が含まれています。

バーチャル3Dクリエイター神部まゆみです(*^-^*)

前回blenderのarchimeshアドオンで窓やドアを作ったから、今回はunityに持って行ってマテリアル設定してみます。

前回の記事はこちら。

またwebVRビルドしてみて、途中経過をVRで見るところまでやってみたいかな。

●PRスペース●

〇まゆみマート|BOOTH

BOOTHでVRoidテクスチャやVRChat向けオブジェクトなどを販売しています。いいねしてくれると励みになります(*^-^*)

窓をいい感じに透過させる

アルファ値0にしたスタンダードシェーダーを設定してみた。

けど、これ片方の窓ガラスが曇った感じになっている(-_-;)

unity 窓 曇る

マテリアルは同じなんだけどなぁ…。

裏側から見ると、曇るガラスが変わる(~_~;)

謎。

追記:ガラスの左右で法線の向きが違うっぽい

blenderで法線の向きを表示してみたら、左右のガラスの法線の向きが違うっぽいです。これはarchimeshの仕様かな?

青が表、赤が裏。

blender 法線 面の向き

これガラスは厚みのない平面なのかな…?法線の向きを統一するだけだと、部屋の外側の表示がおかしくなるかもしれない。

厚みをつけて法線を調整したり、ガラス部分をコピペして部屋の外側にも表面を表示できるようにしたほうがいいかも。

ガラスはちょっと試行錯誤してみたいから、別に記事を書くかもしれない。

両方とも表になるように法線を整えてみた

こちらの記事で書きました。

勉強のためにいじってみたけど、結局はどういう風に見せたいかによって変わってくるかな?

追記おわり。

Mesh Rendererのライティング ⇒ 投影(Cast Shadow) ⇒ シャドウのみ(Shadows Only) にしたら透明になったが…

「投影」を「シャドウのみ」にしたら透明になった。

けど窓枠まで消えてしまった。

これはガラスと同一オブジェクトで、マテリアルだけ分かれているから。

blenderでガラス部分を別オブジェクトに分離してみる

編集モードにして、ガラス部分だけ面選択。Pキーを押して「選択」部分で分離します。

これでunityに持って、ガラス部分だけ「シャドウのみ」にしたら行けた!

unity ライティング シャドウのみ

注意:シャドウのみ(Shadows Only)にするとメッシュが表示されなくなるっぽい?

unityの公式マニュアルによると、

メッシュからの影は表示されますが、メッシュ自体は表示されません。

らしいです。

Mesh Renderer - Unity マニュアル
Mesh Renderer (メッシュレンダラー) は メッシュフィルター からジオメトリを受け取り、ゲームオブジェクトの Transform コンポーネントによって決められた位置にそれをレンダリングします。

メッシュが表示されないから透明になっている感じっぽい。

まぁ別にガラスだから透明でいいか…。でも反射とかができなくなるかもしれない。

以前鏡面反射の記事を書いたけど、ちょっと反射するとクールな感じになって良いかもしれない。

この時はただの鏡だったけど、アルファ値を変えて透明にすればいけるかな?

Rendering ModeをFadeにしてアルファ値0でいけた!

これでもちゃんとガラスが透明になった。

unity fade

メタリックの値を下げたらTransparentでもいけた(;^_^A

メタリックが1のほうが反射して良いだろうと思っていたけど、高すぎると曇っちゃうっぽい?

unity metalic

ガラスの場合はTransparentのほうがいいかも?

unityの公式ドキュメントにもそう書いてある。

Transparent – 透明なプラスチックやガラスなどの現実的な透明なマテリアルのようなレンダリングに適しています。このモードでは、マテリアル自体は、(テクスチャのアルファチャンネルとティントカラーのアルファに基づいた)透明度の値になります。しかし、本物の透明なマテリアルの場合と同様に、反射や照明のハイライトは、完全な明快さで表示されたままになります。

Rendering Mode - Unity マニュアル
標準シェーダーの一つ目のマテリアルパラメータは、Rendering Mode です。ここでは、オブジェクトで透明度を使うかどうかを選択することができ、透明度を使う場合、どのブレンディングモードにするかを選びます。

微妙に詰まったけど、今回はStandardシェーダーの勉強のためにやっているので良いかな。

あとはうっすら反射してくれると嬉しいんだけど、もう少しいじってまた記事にするかもしれない。

サッシ部分を金属っぽくする

灰色とか白でもいいけど、家庭用だと微妙に茶色っぽいのが多いかな?

というか家によるっぽいけど、このあたりは好みかな。

見る角度によっても変わってくると思うから、実際に動かして見てみないとわからないかも。

ドアのマテリアル作成

適当にベッド用に作った木のマテリアルでも割り当てようかな…と思ったらなんかテクスチャが表示されない?

タイリングをいじっても茶色一色。

blenderでテクスチャ貼り付けてみたけど同じ感じ。

これはUV展開とかの問題かな?

普通に床のPlaneにテクスチャD&Dしただけでも普通にテクスチャ表示されるんだけど、ドアはダメなのか…?

BaseBoardは普通にこのマテリアルでテクスチャ表示されたんだけど…。

blenderでドアをUV展開したらいけた

ドアをUV展開したらblenderでちゃんとテクスチャ表示された!

unityでもタイリングをいじってちゃんとテクスチャが表示された。

baseboardとか壁はUV展開しなくてもいけたんだけどなぁ。

まぁできたから良いかな。

ここまでの経過をVRで見てみる

だいたいベースはできてきたから、この段階でまたwebVRで見てみる。

あんまり見る人いないと思うけど、私が見る用に貼っておく(笑)。


Room-webvr

ちなみにこんな感じ。

blender unity 部屋

私のリアルの部屋が広ければ歩いてドアまで行けるんだけど、ガーディアンに引っかかってダメでした(笑)。

でもかなり部屋っぽくなってきたぞ( *´艸`)

あとは窓の向きとか配置とか特に考えずに作ったから、いくつか部屋の写真を探して参考にして作ったほうが良いかな。

一応PC用のwebGLもビルドしてみた

Room-webgl

カーソルはESCキーで抜けられると思う。

今回は下着を履かせたから動き回れるようにした(笑)。

それにしてもwebGLって便利だなぁ…。スマホから見れたらもっと良いんだけど。

おわりに

細かい部分で気になるところはあるけど、大体それっぽくなってきたから良かった。

次はカーペットとか家具とかを作っていきたいかな。

ある程度作ってしまえばコピペで他の部屋も作れるような気がする。

でもこの部屋を作るシリーズはぼちぼち進めていけばいいかな。

プログラムの勉強とか他にも色々やっていきたいことがあるし。

やっぱりこちらのアクションに応じてキャラが反応してくれたら嬉しいし。

以前買ったPlaymakerの勉強をして、簡単なゲームっぽいやつくらいは作れるようになりたいかな。

まぁぼちぼちやっていきます(*^-^*)


追記:続きを書きました。


タイトルとURLをコピーしました