バーチャル3Dクリエイター神部まゆみです(*^-^*)
この記事はblenderのarchimeshアドオンで、部屋の窓と壁とドアを作ってみた備忘録です。
前回blenderでベッドを作ったから、今回は部屋の中を作っていこうと思うよ。
前回の記事はこちら。

使用したのはblender 2.93です。
2022/10/22追記:
archimeshを使わずに自力で作る方法もあります。






↓クロスシミュレーションでカーテンも作ってみたので参考までに。



前回ベッドを作ったから内装を作っていくことにする
前回ベッドを作ったから、今度は部屋の内装を作っていくことにします。
とりあえず今回は、
- 壁
- ドア
- 窓
を作っていこうかな。
家具とか小物は後回しにしよう。
先にドアや窓のサイズを調べてみる
まぁ別に後で調整してもいいんだけど、ある程度実寸に近い感じにしてみたい。
調べてみたら、家を建てる時は建築基準法に則って建てないとダメらしい。
なんか消防法?とかでもなんか色々決まってるんだっけ?
調べてみたら、居室は天井の高さが210cm以上じゃないとダメらしい。廊下とかはこれ以下でも大丈夫らしい。
天井の高さはマンションが平均250cm、一戸建ては240cmらしい
こちらのページによると、最近はマンションは平均250cm、一戸建ては240cmあたりが人気らしい。




なんか開放感がある感じの空間が人気みたいですね。
このページの業者の方は「240cmがおすすめ!」と言っているので、240cmにしようかな。
バーチャル空間に建てるから別にテキトーでもいいけどね(;^_^A
「トイレは235cmと狭めに、リビングは245cmくらいにすると広くて良い!」と書いてあるけど、たった5cmの差でも結構違うのかな?
不動産屋さんに家を案内されたら「リビングは天井の高さが5cm高くなってましてね!ほら神部さん、開放感があるでしょ!」とかアピールされそう(笑)。
素人の私にはよくわからないので「そ、そうですね、やっぱり違いますね!(;^_^A」とか適当に返すしかないけど(笑)。
窓の高さは床から90cm~110cmくらいっぽい
窓については建築基準法の縛りはないらしいです。
こちらのページによると、窓の縦幅も同様に90cm~110cmくらいっぽい?




リビングによくある大きいガラスの戸?みたいなのは掃き出し窓というらしい。
へー、あれも窓なのか。
ドアの高さは190~200cm、幅は63~83cmくらい?
玄関かトイレか、など場所によって微妙に変えたりするっぽい?




屋内は限られたスペースで開閉しないといけないから、ある程度調整したりする感じ?
blenderで壁と窓を作っていく
調べたサイズを厳密に適用するかは分からないけど、とりあえず作っていこうと思います。
archimeshっていうアドオンを使えば手軽に作れるらしい
一から作っていこうかなと思ったけど、そういえばこのアドオン以前使ったことがある。
部屋のメッシュのテンプレートみたいなのがあって、手軽に部屋が作れる感じっぽい。
こちらのSTYLYさんのページが参考になりました。
ありがとうございます(*^-^*)




STYLYさんのメディアはライターさんが優秀なのか、記事がすごく分かりやすいですね。
自力で作る方法は以前CG Geek氏のチュートリアル動画でちょっとやったから、大体わかったしもういいかな。



メッシュは簡単に済ませて、シェーダーとかギミックとかに凝ったほうがいいかもしれない。
archimeshアドオンを追加する
編集⇒プリファレンス⇒アドオン で、検索バーに「arc」って入れれば出るのでチェックを入れればOK。
壁やドア、窓や家具などを設置できるっぽい。
Roomで部屋の壁を作る
追加⇒メッシュ⇒archimesh⇒roomで。
「Number of walls」をいじって壁を4つにして、壁の長さを適当な大きさにする。
ちなみにデフォルトで壁の高さは240cmになってたので、一般的な部屋にしたいなら高さはいじらなくても良いかな。
wall3とwall4の「詳細設定」にチェックを入れて、角度を調整すればいいらしい。
Wall3の角度を 180 、wall4の角度を -90 にしたら良い感じに囲えた。
壁を4つ設定したら「床」にチェックを入れればOK
これは自動で壁から床を作ってくれる機能だから、最初にチェックしておいても良いかもしれない。
けどチェック入れるとメニューの表示が切り替わって混乱したので、最後でいいかな。
壁の角度調整する前だと変な感じに床が表示されちゃうし。
アンドゥしたらblenderが強制終了した(~_~;)こまめに保存したほうがいいかも?
ちなみにバグなのか、床にチェック入れてからCtrl+Zでアンドゥしたらblenderが落ちた(;^_^A
今のところ毎回なるから再現性100%かも。
そういえばwallの設定をいじってからアンドゥしたらその時も落ちたかも?
archimeshいじる時はこまめに保存しといたほうが良いかもしれません(^_^;)
もしかしたら環境にもよるかも。
ドアを設置する
…その前に、部屋の中が見にくいから壁の一つを「不可視」にして見やすくしておく。
ドアを追加するには、 追加⇒メッシュ⇒archimesh⇒doorでOK。
ドアの下の十字を選択して、適当な壁に埋め込む位置に移動させればOK。
参考にしたSTYLYさんのページによると、autoholeって機能を使えばドア部分に自動で穴が空けられるようです!
とりあえずドアはこれでいいから窓を設置していきます。
窓を設置する
追加⇒メッシュ⇒archimesh⇒railwindowsで。窓はpanel windowっていうのもあるみたいです。
位置調整したけど微妙にガラスが壁に埋もれてるけど…。
多分外側の四角いフレーム?の部分で穴が空くんだろうから、autoholeで穴開ければいけるかな?
あ、そういえば高さは測ってないや(^_^;)
unityに持って行った後に、高すぎるようなら調整すればいいかな。
2022/02/08追記:左右の窓ガラスの法線の向きを確認したほうがいいかも
これ窓ガラスって左右で裏表があるみたい?
法線の向きが左右で違うかもしれないので、この段階で面の向きを確認しておいたほうがいいかも。



AutoHoleでドアと窓部分に穴を空ける
STYLYさんのページによると、AutoHoleっていう機能を使えば窓とドア部分に穴を空けられるらしい。




これをやらないと壁にくっついてるだけなので外側が見えないっぽい。
注意点は、unityに持っていく前にBooleanモディファイアを適用しておかないと表示がおかしくなるらしい。
【エラー?】壁の厚み(thickness)が0だと、「Walls must have thickness for using autohole function. Change it and run again 」エラーが出て穴を空けられなかった
エラーというか一応動作はしたっぽいから警告?
なんかドア部分の表示がおかしくなって穴が空かなかった。
「autohole機能を使うにはthicknessを持っている必要があります!設定変えてまたやってね」みたいな意味っぽい。
thicknessを0以上にしたらちゃんと穴が空いた!
うん、窓とドアを非表示にしても穴が空いてますね。
へーこれは便利だ…。
archimeshはデフォルトのアドオンっぽいから積極的に使おう。
これをベースに改変していってもいいし。
モディファイアを適用して、ブーリアン用の箱?を削除しておく
参考にしたSTYLYさんのページに書いてあったけど、これをやらないとunityに持って行った時に表示がおかしくなるらしい。
Roomのブーリアンモディファイアと、ソリッドモディファイアがある場合はそれも適用する。
ドアと窓を囲んでいるブーリアン用の箱?はAutoHoleで穴を空けた後は消したほうがいいみたいなので、この段階でやっておきます。
これでいいのかな?
長くなったからunityに持って行ってみるのは次回でいいかな。
2021/12/22追記:baseboardのモディファイアも適用しておかないと、ドアの下部分にbaseboardが残ってしまう
後から気付いたけど、Roomだけじゃなくてbaseboardにもブーリアンモディファイアとソリッドモディファイアがあるみたいなので、それも適用しておく。
これを適用せずにブーリアン用の箱?を消してしまうと、ドアを開けた時に下のbaseboardが残ってしまいます。
壁だけじゃなくて下のbaseboardにもAutoholeで穴を空けてるみたいですね。
せっかくだからシェイプキーを仕込んで窓とドアを開けられるようにしてみる
まぁちょっとした動作だから、unityでルート動かしてアニメーション作ってもいいけど…。
窓を開けるシェイプキー
ちゃんと動いた!
2022/10/22追記:カーテンも作ってみました
クロスシミュレーションでカーテンも作ってみたので、窓に添えたい方は作ってみると良いかも。



ドアを開けるシェイプキー
ドアは部品が多いから、動かす部分を先に結合しておく。
ちょっと回転させて位置を調整すればいいかな?
これでちゃんと動いた!( *´艸`)
こうやって動かせるようにしとくと面白いかも。
VRのコントローラーのタッチが検知できれば、シェイプキー切り替えは以前スクリプト書いたから行けそう。



まぁとりあえず↑のスクリプトでキー入力だけで動かしてみようかな。
続く
長くなったから続く。
次回はunityでシェーダー設定とかして動かしてみます。
できればVRでコントローラーをタッチしたらドアや窓が開閉できるようにしてみたいけど…。
STYLY+PlayMakerだと普通にできるっぽいんだよなぁ…。




PlayMakerは以前アセットセールで買ったまま放置してあるからいじってみようかな。
PlayMaker使えば手軽にゲームが作れるっぽいし。
PlayMakerはちょくちょく30~50%オフセールやってる印象なので、安い時に買っておくといいかも。
まぁもう少しいじってみます(*^-^*)
追記:
続きを書きました。


