舞台(家庭科室)作り【Unity】

絶対調味ロジック

キャラクターと背景が出来上がったので、いよいよUnity起動フェーズに入りました。
1年以上も触れていないと最早初見です…
前のプロジェクトを見たところで解析能力が不足していて理解不能…

外郭配置

何はともあれUnity起動。
前のバージョンはセキュリティー警告!と出ていたので、さっそくバージョンアップです。
世間では「Unity6」の流れだと思うのですが、2Dに理想の影をつけるやり方が良く分からないので、この時点で最新LTS「2022 3.62f3」を頑なに使用していきましょう

今後使うであろう素材のフォルダ分けをしっかりと行うことを言い聞かせ、基準として床pngを配置します。

さらに基準としてキャラクターを配置して、3Dモデルをインポートしてみたところ、やたらと大きく表示されました。
キャラクターのスケールを3~4倍にしています。

Blockbenchで作成したときは、キャラクターの1/3で作ったので相当小さいサイズになると思っていました。
調べたところBlockbenchUnityでは単位の解釈が異なるようです。

  • Blockbench:1単位 = 1ピクセル相当の小さなスケール
  • Unity:1単位 = 1メートル

例えば、Blockbenchで作った16×16×16のモデルが、Unityでは16メートルの巨大なモデルとして読み込まれるということらしいです。

Blockbenchでのサイズを更に小さくするか、Unity上でスケール変更するのが解決方法です。
あまり元3Dモデルを小さくしすぎるのもカメラ操作感などが大変そうになりそうだったので、このままUnity側スケールでいろいろ調整してみたいと思います。

Unity内でのスケール設定で拡大縮小しても、3Dモデルや2D画像の元のサイズ(データ重さ)基準になるので問題なさそうです。逆にデータを軽くしたい場合は元データをいじる必要があります。

チクチクと家具を配置しているときに、ふと思い出すわけです。
たしか「」は3D素材にしか反映されなかったはず、と。
なので床を3Dにする必要があります。
壁なども後々配置するので、この際「」「」「」をまとめて1つのモデルで書き出してしまえば楽ができそう!と試します。
どうせなら配置した家具もすべてまとめて、とやってみたのですが、さすがに各部位に対してのテクスチャの貼り方が分かりませんでした…

外郭くらいだったら、ちゃんとテクスチャも貼れた状態で書き出しと読み込みができました。
これだけでもかなりの時短です。
若干気になるところがありますが、次回のモデル作りにいかしたいと思います。

家具配置

改めて家具を1つずつ配置していきます。

冷蔵庫の開閉」配置の際、ピボット(回転などの基準位置)問題が発生したので解決方法です。
Blockbenchでピボット位置は設定したはずなのだけれど、Unity上で戻ってしまっていました。

方法は簡単で「空のオブジェクト」を作り、好きな位置に配置した後に、その中に素材を入れ子にするというもの。
具体的には、冷蔵庫の扉の端(基準にしたい場所)まで空オブジェクトの移動線を移動させ、その中に扉モデルを入れてあげます。回転をしたい場合はモデルではなく空オブジェクトを選択して変化させることができるという仕組みになります。

あとは特に問題なく淡々と配置をしていきます。

まだカメラ位置をしっかりと決める段階ではありませんが、どんな感じの画面になるかなぁとカメラを試しています。

急遽「換気扇」のアニメーションを作り、手探りでライトを配置してみました。
やはりライティング影表示で画面がはっきり変化します。
2Dを基準に、3Dの特権を生かしていきたいところです。

影の付け方は「【3D】2Dスプライトに影をつける【BRP】」を参考にしてみてください。

次回からは、いよいよシステム面の構築になるでしょうか。
「過去ログ」「早送り」「セーブロード」などなど必要機能はいったんおいておいて、
とりあえずノベル・アドベンチャー形式を完成させていきたいです。

コメント