UnrealEngine を使って注文住宅を建てたお話 

# はじめに
この記事は[Unreal Engine (UE) Advent Calendar 2023](https://qiita.com/advent-calendar/2023/ue
 "「Unreal Engine (UE) Advent Calendar 2023」")の6日目の記事になります。

Unreal Engineを使用して注文住宅の建築を行う需要は、一般的にはあまり高くないかもしれませんがぜひ読んで頂けると幸いです。
また注文住宅とはなんやねんと思った方はこちらの[リンク](https://suumo.jp/article/oyakudachi/oyaku/chumon/c_knowhow/chumonjutaku/ "Suumo")から見てみてください。
凄く簡単にいうと自分で自由にカスタマイズした家を建てる事です。

# UnrealEngineを使用して家造りをしようと思ったきっかけ
注文住宅を建てるにはハウスメーカーと契約する必用があります。
契約したハウスメーカーにある程度の希望を出して仮で間取りや壁紙を選んでもらうと、The普通といった感じで量産型のようなものが提案されました。
やはり自分達で色々と考える必用があり、その中で提案もたくさんする必要があるんだなと実感し始めました。
そこで普段使用しているUnrealEngineを使用して少しでも理想に繋げる事が出来ればなと思い使用を決めました。

# UnrealEngineを使って何をしたいかを決める
Unreal Engineを日常的に使用している方ならご存知かと思いますが、膨大な量の機能があるため効果的に活用するために、やりたい事を絞って使用しました。

1.設計士から頂いた設計図の3D化:
ハウスメーカーから外観の3Dイメージは提供されましたが、内装のシミュレーションが出来ないため、
設計士から提供された設計図に基づき、3Dモデリングを行いました。
<img width="80%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/980013/f4a70089-9193-84f5-737f-04a397470bb4.png">

2.壁や床の色味や模様のシミュレーション:
契約したハウスメーカーでは床や壁の仕上げに関するシミュレーションが一切行えなかったため、
Unreal Engineを利用して色味や模様のシミュレーションを実現しました。
<img width="80%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/980013/d2da09e0-e4d4-cc93-2e2e-23b088240372.png">

3.家具やライトのシミュレーション
壁や床と同様に、ハウスメーカーでは提供されなかった家具やライトに関するシミュレーションをUnreal Engineを用いて実現しました。
<img width="80%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/980013/8b42e68c-f621-8856-de31-c7f1978f0382.png">

4.設計士とのコミュニケーションの効率化:
注文住宅の特性として、コンセントの位置などを数センチ単位で細かく調整できるため、関係者間で共通の理解を確立する必要がありました。
このため、打ち合わせ時にUnreal Engineの画面を活用し、共通の視覚的な認識を持ちながら打ち合わせを行いました。

# 設計図からモデリングを行う
初めに断っておくと私はプログラマなのでモデリングをする事が出来ません。
今回も私の知り合いにお願いしてモデリングをして頂きました。
その中でいくつか気がついた点があったので備忘録として残しておきます。
<img width="80%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/980013/7ec1a1e0-985c-786f-18de-515618edfe1b.png">

家の間取りは各ハウスメーカーで様々な制約があります。
大きな窓を付ける事ができない、大きなリビングには柱が必要などハウスメーカーによって様々です。
それでも家の間取りは大きく変化します。我が家は最終的に2F建てから平屋になりました(笑)
<img width="80%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/980013/0b4df7ca-dce0-84c0-0a13-7140b78be4f2.png">

それくらい間取りというのは変化する可能性があるため、ある程度内装が決まってから行う、
出来れば内装はUE5にある「モデリングツール」をなどを使用して出来るだけ後から変更できるようにしておくのがよいと思いました。
<img width="80%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/980013/ab6ae5e7-237c-d9af-319a-d4a8278ad5d4.png">

また壁紙もかなり自由に張り替えを行う事ができたので、
ここからは「A壁紙」少しズレて「B壁紙」にしたい時などが出てくるので壁のマテリアル分けも壁ごとにしておいた方が後々カスタマイズ性がアップします。
<img width="80%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/980013/afa8919c-f929-1d0a-67ba-a77fef0a4711.png">

# 壁紙について
上記でも記述した通り、壁・天井の壁紙はかなり自由に張り替えを行う事が出来ます。
壁紙には奇抜な色や模様がありますが、そういう壁紙を何もシミュレーションしないで選定するのはかなりの勇気が必要なのでUnrealEngine上で色を確認できたのは非常に良かったです。

壁紙を得意とする業者が複数あり、各社の公式サイトから無料で壁紙のサンプルをもらう事も出来ます。
サンプル資料から品番がわかれば各社が提供している壁紙の画像データを取得する事が出来ます。
<img width="80%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/980013/9dfcb264-fe15-f341-9d6a-405ec611d46a.png">

取得した画像をUnrealEngineに取り込み適当なマテリアルに適用し変更したい壁に適用する事で部屋の雰囲気を確認する事が出来ます。
<img width="80%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/980013/5be34698-f1d2-4fc7-12fa-7254cb797fdd.png">

# グレイマンを置いて部屋の広さ・狭さを測定
大豪邸を建てない限りはどうしても狭いと感じてしまう部分が発生してしまいます。
我が家では基準としてグレイマン(推定身長185センチ)を様々な場所に配置し、グレイマンが狭くなさそうであれば充分な余裕があるというルールを設けました。
<img width="80%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/980013/173ddb00-1d5a-496a-cd1c-acd891118273.png">

開発陣の中では定番のグレイマンですが、一般の方から見れば白いアンドロイドに見えるためMetaHumanなどを使い出来るだけ一般の方が見ても違和感のないモデルを配置すれば良かったなと今更ながら思いました。

# ライティングのシミュレーションについて
ライティングのシミュレーションはUnrealEngineを使う中で一番のメリットを感じました。
天候の制御は定番である[UltraDynamicSky](https://www.unrealengine.com/marketplace/ja/product/ultra-dynamic-sky "UltraDynamicSky Store")を使用しました。
使用したいレベルに「Ultra_Dynamic_Sky」を配置し「TimeOfDelay」を調整するだけで簡単に時間を制御する事が出来るので簡単に導入する事が出来ます。
<img width="80%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/980013/48035cb5-4842-b64f-d528-5a99ad6212d7.png">
<img width="80%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/980013/6e66f999-a019-f421-01a1-a4dc804400d7.png">

我が家の庭側に2F建ての黒い家が建っているのでどれぐらい日陰になるのかもシミュレーション出来るため、家が住宅街で隣接している家が多い土地であれば日陰かどうかも考えながら間取りを考える事が出来ると思います。
<img width="80%" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/980013/aa39c227-233a-0f26-9745-644a6a905fd1.png">

# 振り返り
家造りをする際にUnrealEngineを活用できたことは、非常に良い経験でした。
注文住宅は自由度が非常に高いため、頭の中で想像するだけでは難しいシーンが多くあり、従来の手法では無難な設計になりがちだなと感じました。

ただ、自らモデリングを行い、細部にわたる調整が可能であれば、もっと設計の自由度が広がり、よりイメージしやすい形に出来ただろうなと思いました。

普段からモデリングに携わっている方がUnrealEngineを活用する場合、よりオリジナリティ溢れる家具やデザインを導入することができ、イメージがより鮮明になると思います。
総括するとUnrealEngineを使用しての家造りは非常に満足のいく結果だったなと思います。