見出し画像

不思議の一軒家について①

 

はじめに

こんにちは。みっつです。
この度、2023年の4~5月にかけて制作した「不思議の一軒家」という cluster ワールドの制作について、諸々忘れてしまう前にまとめておこうという記事です。

まずはどんなワールドなのか、ひとまず核心に触れるようなネタバレ要素が無い範囲で、導入部分だけ少し紹介です。


ワールドの舞台は、RPGゲームの中のようなファンタジーの世界。
勇者の旅立ち前日の自宅。


3階にある自室でベッドで休むとゲームスタートです。


画面が暗転して旅立ちの朝。
"お決まりのやつ" で起こされます。

が、どうやら話を聞いていくと、


「家がダンジョンになってしまった!」
ことを伝えられます。



無事に旅立つまでの、住み慣れた家の中が冒険の舞台になっている。
というダンジョン攻略系のワールドです。

ダンジョンを抜け、玄関から家の外に出ることができると、家族に送り出されるエンディングを見ることができます。


このワールドを制作するにあたって、考えていたことや実装したことなどを各論でまとめられたらなと思います。

気になるところだけでも読んでいただけたら嬉しいです!



☆☆☆
以降は何も気にせずネタバレし放題の記事を書こうと思っていますので、いま一度フレッシュな状態で遊んでみた上で読んでいただいたほうがいいかもしれません。


着想

このワールドは「メタバース一軒家コンテスト」という企画への応募作品として作ったものです。
お題は、メタバースならではのおもしろ一軒家 を作ること。
unityと cluster creator kit を使っての制作においては、ビルド後のワールド容量25MB以下を推奨という制限もある中での制作でした。


どういうものを作るかを考えましたが、一応コンテストという枠の中ではあるものの、
「自分がおもしろいと思えるものを作る、自分が遊んでみたいものを作る、自分の好きなジャンルのものを作る」
これは前提として外せませんでした。

ここを軽視すると作っていて楽しくなかったり、多少無理をしてでも作りきろうと思えなかったりする事は経験的に知っていましたし、今回は制作期間も数週間以上にわたる可能性があったので、燃料切れしないためにも特に気をつけました。


その上で、
・厳しい容量制限の中でビジュアル特化のワールドを作り切るのは自分の今のスキルでは追いつかない部分がありそうなので、コア体験の重心は鑑賞とは別の部分におく。

・ワールドクラフト機能ではなく Unity と Cluster Creator Kit を使って作るからには、そうでなければできない仕組みを組み込む。

・一人でも楽しく遊べるし、他の人と遊べると旨味も楽しさも増すような仕掛けや、何度も遊びたくなるような要素も考える。

・ここは何のワールドであるか、訪れた人は何を味わえばいいのかを明確にする。良いログラインをしっかり作る。

などということを色々考えていました。


そんな中で、かねてより「あったら楽しそうだな~」と思っていた、
風来のシレンやトルネコの大冒険、チョコボの不思議のダンジョンのような3Dのローグライク系のダンジョンワールドを作ってみるのはどうだろうか。
と考え始めていました。
(xz平面、xy平面での自動生成の迷路やダンジョンのワールドは既にいくつかあったものの、3次元的に広がり、しかも連続的に空間が接続されている自動生成ワールドを自分は見たことがなかった)


一軒家 × 不思議のダンジョン
というコンセプトの大枠が決まってきたので、どんな設定がいいだろうかと考え続けていたある日、

「勇者の家をダンジョンにしちゃうとか、魔王様マジ天才っすwwww」

という側近キャラっぽい何者かが発する謎の台詞を思いつくに至りました。

旅立ち前、勇者が最も弱いうちに叩く。というある種の禁じ手を取ってしまうという設定に自分でも面白さを感じましたし、
(※以下ネタバレ)
実はそれは、一緒に暮らしている家族の愛が産んだ架空のダンジョンだった、という真エンドを作ることもできそうだということから、今回はこの線で作ってみる覚悟をしました。


というわけで、
一軒家 × 不思議のダンジョン × マルチエンドのストーリーもの
を作ることが自分の中で明確になったのでした。


ここからあとの記事では、制作の時系列ではなくプロセスや内容ごとに区切ることにしました!
また、長くなってしまったので記事を小分けにします!



建築

まず、今回の物語の舞台となるメインのオブジェクト、家を建てたことについて振り返ろうと思います!

構造

せっかくの一軒家コンテストだったので、外観と家の構造だけは自作しようと決めていました。

また仕様としても、ドアのクリックや衝突で家の中にワープする、というのも避けたく、物理的に連続的な構造ですべて作り切ってしまいたいと考えていました。

というのも、この家はストーリーの流れからすると導入部分で触れる建物なので、訪れたてでワールドの世界観を理解しようとしている訪問者の方々に、 このタイミングで余計な違和感を感じてほしくないというのと、
複数人で遊んだ時に、家の外から窓を通して中にいる人を見れるとイイな(逆もしかり)と思っていたからです。


簡単に言ったものの、複数階建ての建造物、それも少し凝った見慣れない形のもので外観と中の構造を地続きで作るのはまだ自分には一苦労なことは予想がついていました。

とはいえ何度か建物まるまる作ったことはあったので、その時に何度も困った記憶を手繰り寄せながら、できるだけシンプルに面を切りながら、どこがどうなっているか頭の中で把握しながらモデリングしたように記憶しています。

目指すのは、
外観は、見ていて目が楽しくて、中に入ってみたくなるような形状
中の構造は、ワールドとしての体験の順番を邪魔せず、むしろ順序だてて誘導する機能となる導線を敷けるもの
としてイメージしていました。
このあたりは自分でモデリングして家を作る利点だと思うので、可能な限り重視していたいと考えていました。


参考資料集め

モデリングをするときの参考資料は、主にPinterestを使って集めています。
作るものやワールドごとにボードを作って、たくさん入れるようにしています。
下のスクリーンショットは今回集めたものの一部。


かき集めたものの中からさらにピックアップして、
「ここ使いたい」という部分だけさらに抜き出して、あとはそれらを頭の中でミックスしながら、モデリングソフト Blender の画面の中で反映させていく感じで作っています。

場合によってはこのタイミングで落書きのような感じで絵を描いてみることもありますが、今回はそれはスキップして実際に手を動かしながら調整しました、時間も少なかったので。


こねこね

ファンタジー風の家を作りたかったので、イラストやRPGゲームの画面を見漁った結果、

・家の外の壁などの木の骨組みや梁
・3階建てくらいで、上から見た形は単純な矩形ではなくL字型
・屋根の立体感(瓦っぽく乱雑な感じ)
・窓やドアの情報量

あたりを気にするとそれっぽくなるんだろうなと思ったので、これらを踏襲できるような形を目指してモデリングを始めました。


まずはプリミティブ+αくらいで建築。


なんとなくの形を整えたところ。
現実世界の建築に詳しいわけではないので、色々あり得ないんだろうな、と思いながら、屋根に厚みを付けてみたり、骨組みを置いてみたりして、少しずつ参考資料のものに近づいて行った感じはする。
ものの、なんとなく現代っぽい家感がぬぐえないことに不安も覚えていた記憶があります。


ちなみに内装も同時に作る必要があったので、のちのテクスチャリングも考えながらシームを入れたり、フロアごとに物理的に切断しておいたりと、細かいひと手間を加えながら作っていました。

床や壁、柱の厚みなどをすべて整数値で設定して把握しながら作れたので、細かい調整はかなりしやすかったです。

このくらいの時点で一度 Unity に持っていって、 cluster にアップロードしてサイズ感を見ました。
少し違和感があったので修正したみたいです。


窓を付けたり


実際には絶対にありえない謎の屋根の凹凸を作ってみたり、


土を作ってみたり、


家の周りに置かれていそうなものをいくつか作ってみたりしながら、



なんとか構造が完成しました。
おそらくモデリング開始からここまでで実稼働の作業時間がトータル10時間くらいだったみたい(途中一晩睡眠をとった時間は除く)。


テクスチャ

今回のテクスチャは、Substance 3D Painter のフィルターで、塗ったものをピクセル風にしてくれるという以下のスグレモノを使ったことが特徴です。


使ってみたかった理由が二つ。
一つは、ワールド容量削減のためにテクスチャ解像度を下げる可能性が高かったことで、どうせ解像度が落ちるならピクセル風にしておいた方が諸々の耐性が高いのでは?と考えていたからです。
もう一つは、ワールドの雰囲気をレトロゲーム調のものにしたかったからです。
何かいい方法はないものか、と調べていた時にこの神フィルターに出会ったわけでした。


ざっと塗った結果がこんな感じです。
外装と内装それぞれテクスチャ1枚ずつ、丁寧にUV展開する余裕もなかったので、よく見るとおかしなところもたくさんあって悲しかったですが、この後のフローでなんとか誤魔化す!と割り切りました。


内装もすべて、塗り終えた後にフィルターをかけてビット風に。
この時点では、この塗りが狙ったように機能するかは正直不明でした。


このタイミングで、Boothなどを色々あさって、家具の3Dモデルを家の中に配置して、UV展開し直してテクスチャをまとめて、同じように塗り直しました。

部屋に合わせて家具を配置。
けっこう時間かかった気がする。



家と雰囲気を合わせてテクスチャリング。


ライトベイク

今回の容量制限最大の難関のひとつが、ライトベイクだと考えていました。
Unity でライトマップを作成してしまうとそれだけで数MB、下手すると数十MBになってしまうので、初めからこれは無理だと思っていました。

というわけで、Substance3DPainterで描いたテクスチャをBlenderで改めて読み込んで、ライティングもBlender内で行ってテクスチャにベイクしようと考えました。
これは個人的には初の試みでした。


というわけでまずは Blender 内でライティング。


だいぶ雰囲気がよさそう。

この状態で影をテクスチャに焼き込んで、Unity に持っていった結果がこれです(プレビューモードなので各種補正は入っていると思います)。最終盤よりはまだだいぶ暗いですね。

ばっちり雰囲気出た!と感じた記憶があります。

このまま clusterに持っていくと、

こんな雰囲気だったみたいです。修正の必要はありそうだけど、影もバッチリ入っていて存在感が増しました。

この時点で、テクスチャを圧縮せずにワールド容量が 8MB くらいだったので、「これはイケる!」と思いました。


こんな感じで、建築が終わりました。


最終結果

ワールドで遊ぶとわかりますが、その後見栄えは色々調整をしまして、結果は以下のようになりました。

外観。
あまり色調をダークに落とし過ぎると、cluster アプリ内のカメラ機能で撮影した時に圧縮耐性が下がるので、適度に明るくなるようにマテリアルを調整。ほーーーーんの少しだけemissionもかかってるはず。

家に入った時に、階段が見えて、同時に奥に誰かいるのも見えるような配置。
たぶん、まず奥に行って話しかけたあとに階段を登ってみよう、と思うはず。


2階に上がった所。二つの部屋と、真ん中に階段。
部屋を散策してから3階にあがりたくなるかなと。


部屋の中。灯りに照らされたオブジェクトに目がいってほしい。
他方、せっかく置いた家具や小物も存在感が出てほしいので、マテリアルの値をかなり念入りに調整。
結果反射光がいい感じに入ることで輪郭やメッシュの切り込みが際立っていい感じに。


自室のドアを開けたところ。
建物の構造的に、ドアの目の前に壁というあまり良くない感じになってしまったので、右側に進めることを示せる位置にチュートリアル用の敵キャラを配置。少しは視線を誘導できてマシになった気がしている。


初めに目標設定していた、
・外観は、見ていて目に楽しいもの、中に入ってみたくなるような形状
・中の構造は、ワールドとしての体験の順番を損なわず、むしろ順序だてて誘導しやすくなるような導線を敷けるもの

というのは最低限達成されたかなと思っていてそれなりに満足しています。
もちろんまだ修正したいところは山ほどあるのですが。

そんな感じで、建築編は終了です。


つづく

長くなってしまったのでここで一度切ります!

このあとの記事では、

ギミック編
(チームとして制作するに至った経緯などもここで!)

バトルシステム編
(謎のシステムを採用した理由や、その仕組みについて)

ストーリー編
(下手すると台詞全公開するくらいの勢いかもしれない…。各エンディングの条件もネタバレしちゃいそう)

その他気にしたところ編
(サウンド頑張ったとか、ワールド入室時のファーストビューとか、サムネイルとか、全体の体験関連とか、諸々)

が続くと思います!



できればネタバレになって欲しくないので、気の済むまで遊んでみてから読んでいただけたらなと思います!

確実に真エンドを見ることが出来るワールドもアップロードしているので、
こちらを遊んでもらうのがいいと思います!


それでは!


この記事が気に入ったらサポートをしてみませんか?