· 

【Blender】ステージを制作する

Last Updated  2024.12.06


 Unityの自作ゲームで使用するステージを、Blenderで作った際の記録です。

 作り方がイメージしやすかったので、今回は

 「現実は がむしゃらに来るし」っぽいステージを自作してみます。

パーツを作る

 まず床を作ります。

 円のメッシュを追加して、大きさや頂点数に任意の値を入力。

 中央には模様を入れたいので、(テクスチャーの歪みやジャギを抑えるため)大きめに面を取り、残りの部分はフィルで面張りしていきました。


 次に塀を作ります。

 掘の基礎部分は平べったく設定した円筒を拡げ、あとでも細かい調整が出来るよう

ソリッド化モディファイアー》で厚みをつけます。

 

 また、スケール感を把握するために "キャラクターに近い大きさ" の円柱を目安として設置しておきます。自分の場合、高さ1.6m、幅0.5mくらいに設定しました

blenderでステージ背景 塀の基礎ブロックとキャラクターのアタリ
▲手前がキャラクターの目安です

 特徴になる堀の凹凸は、基盤となる大きさのブロックを1つ設置し

 Array(配列) モディファイアーを使って配置します。

 

 設定としては、”中央に空のエンプティ" を設置し── 

 「オフセット(OBJ)」欄に、それを参照するように設定。

※「オフセット(倍率)」と「一定のオフセット」のチェックは外して下さい。

 あとは『エンプティの回転』の値で、配置間隔を調整できます。

 円状に囲む場合は、360を綺麗に割り切れる値が無難ですね。

▲カタチになってきました
▲カタチになってきました

 大まかな形が出来たところで、いったんFBX形式で出力し、Unityでサイズ感を確認してみます。

 はじめてにしては……というのが率直な感想ですが、思ったより狭く、ブロックも自分がイメージしてるより間隔が開いていたので、気になった部分を修正していきます。やっぱり目視確認は大事ですね。

細部を作り込む

 全体のサイズ感が決まったら、残りの部分を作ってマテリアルを設定していきます。

 

 今回は試作だったので門は大まかに作り、テクスチャーは床のみ設定しました。

 ▲床の模様のテクスチャーは、普段使いのペイントソフトで制作しています。

FBX形式でエクスポート

 マテリアルの設定まで終わったら、《FBX形式》でエクスポートします。 

※自分が問題なく移植出来た際の出力設定です

 

 ・《対象》の《可視オブジェクト》にチェック

 ・ステージ背景なので、メッシュのみ選択

 ・トランスフォーム欄の設定は画像を参照

 

 画像赤枠部分をチェックしないと、各オブジェクトのスケール感がUnity上でおかしなことになるのでチェックを入れます。

 

 ※具体的には、Transformの《Scale》の値が1になってなかったり、オブジェクトの向き(Rotationの値)がおかしなことになったりします。

 テクスチャー画像は、Unityでモデルデータを放り込むフォルダーと『同じ場所』に入れておくと自動適用されるので、この段階でコピーして移植しておきましょう。

 あとは、出力したFBXファイルをUnityに持っていけばOKです。

Unity上での設定

 背景として扱う『動かないモデル』をオブジェクトとして設置する際には

インスペクター欄の右側にある《Static》を、忘れずにチェックしておきます。

 

 "動かないオブジェクトとして扱う" ことで、描画負荷の軽減 に繋がるみたいです。

動作確認

▲Unityでテスト確認の様子

※今回はお試しのため、塀と門のマテリアルは未設定

 本当はSKYBOXまで変更したものを上げたかったのですが、無料アセットの範囲だと自分のイメージに合ったものが見つけられませんでした……ここも自作するしかないのかしらん?

おわりに

 この数か月、結構な時間をかけてBlenderの使い方を学んでいたのは、キャラクター制作だけでなく、こういったこともある程度出来るようになりたかったんですよね。

 

  

 クオリティはさておき、やっぱり自分の手とイメージでアウトプット出来た方が、最終的には早いし、「納得」も「妥協」もできそうかなと。形状、構造、ポリゴン数……等、全て自分で管理、把握できるのは、大きなメリットだと思いますし。

 

 なにより、ステージって『世界観を視覚的に表現できる』重要部分ですから、ここをテンプレートに依存するのは単純に勿体ないと思うんですよね。

 

 身の丈に合わない理屈をこねてるのは重々承知ですが、そういった事情込々での試みでした。

 出来たものはまだまだ拙いですけど、一連の作業を経て、また気付いたことや現在の問題点、新しく試したいことも増えました。引き続き、学習と開発を続けていけたらと思います。