【Unity】AssetsメニューのCreateを解説するよ(シーン、マテリアル)【初心者向け】
メニューバーの解説記事を書いていて『Assets』に差し掛かったのですが、Createの中身がとんでもなく多かったので、別記事として切り出して解説をすることにしました。
Assets/Createといえば、Unityでゲームを作っていてみんながお世話になるメニューなので、じっくりと書いていきます。
Assetsメニューの解説記事はこちらです。
このページでは上から順番に『Scene』から『Custom Render Texture』まで解説しています。
『Folder』から『TextMeshPro』までの解説は以下のパート1をご覧あれ。
環境
macOS 10.14 Mojave
Unity2018.3.14f1
Unity Hub 1.6.2
AssetsメニューのCreate
新しくアセットファイルを作る時に使われるメニュー項目です。
Createからたくさんの種類のアセットが作成できるようになっています。この記事ではUnity2018.3のデフォルト状態で作成できるアセットについて解説します。
区切り線ごとにまとめて解説を行います。記事の中では暫定的に以下の呼び方で区別します。正式な呼び方じゃないから注意。
上から、フォルダの作成、スクリプト系アセットの作成、シーン系アセットの作成、オーディオミキサーの作成、レンダリング系アセットの作成、スプライト系アセットの作成、アニメーション系アセットの作成、タイムラインアセットの作成、物理マテリアルの作成、GUIカスタマイズ系アセットの作成、レガシーアセットの作成、テライン系アセットの作成と呼んでみます。
12領域、31種類の作成メニューですね。大豊作です(白目)
ここでは「シーン系アセットの作成」から「レンダリング系アセットの作成」までを解説します。
シーン系アセットの作成
3番目の領域はシーン系アセットの作成を行う機能です。「シーン系」なんてひとまとめにしちゃいましたが、シーンファイルとPrefabだと毛色が違うかも(今更)
Scene
シーンファイルを作成します。まずはここからですね。
2018.3ではプロジェクト作成時に「SampleScene」という名前のシーンが作成されています。これをリネームして使ってもいいですし、新しくシーンを追加してもOKです。
だいたい画面ごとに1シーンを割り当てるといい感じだと思います。というのも、必要な機能やオブジェクトだけをメモリに読み込むようにしないと、すぐメモリがいっぱいいっぱいになってしまいますからね。
昔のRPGみたいに広大なフィールドを全部繋げて表示しようとするとメモリさんが悲鳴を上げます。特にモバイル端末では潤沢なリソースがないので、必要な分だけをロードするのが鉄則です。
よほど大きいシーンでなければロード時間もそこまで長くならないので、単純に画面をフェードアウトさせてシーンを切り替えてもいいですし、場所移動エリアに近づいたら次のシーンを追加で読み込んでおいて、シームレスに移動できるようにするのもアリかもしれません。
とまぁシーンの切り替えの話になってしまいましたが、初心者にオススメしたいのは1シーンで完結するゲームを作ること。「たった1シーンだけでいい!」って思っているのと、「画面ごとにシーンを分けなきゃいけない!」と思っているのでは投げ出す確率が天と地ほど違いますからね。超簡単なゲーム、超簡単なシーンでいいから、とにかくゲームの始まりから終わりまでを作るのが第一歩です。
Prefab Variant
あるPrefabをベースとしたバリアント(変異体)を作成します。2018.3から使えるようになった機能です。
バリアントの綴りはvariantで「変異体、わずかに異なるもの」という意味です。バラエティとかバリエーションなんて言葉と並べると分かりやすいかも。パート1のシェーダーバリアントでも出てきました。
このPrefabバリアントは元となるPrefabの設定をベースに、独自の設定を持つことができます。とても良い点は、ベースPrefabで変更した点がバリアントの方にも反映されること。
ちょっと例を見てみましょうか。Textコンポーネントを持ったオブジェクトをベースPrefabとして、いつも通りにProjectウィンドウにドラッグ&ドロップします。このPrefabを選択した状態(大事)で[Prefab Variant]を選択すると、上の枝分かれマークのついたPrefabバリアントが作成されます。このバリアントをシーンに入れて、以下のように色違いで別テキストを入力します。
バリアントの方で変更した設定は、Rect TransformのPosition、Textの内容、Textの色です。これ以外はベースと共通しています。
ここで、ベースのPrefabでテキストのサイズを64から96に変えてみます。変更後は、Inspectorウィンドウ右上にある[Overrides]のプルダウンを選択し、[Apply All]をクリックします。
するとベースのテキストサイズだけではなく、バリアントの方でも一緒にサイズが変更されました。ベースPrefabのテキストの色は黒ですが、それはバリアントの方に影響を及ぼしていません。
バリアントの方で変更した設定以外は、このようにベースの設定を反映させることができるんです。
オーディオミキサーアセットの作成
4番目の領域はオーディオミキサーアセットの作成を行う機能です。
Audio Mixer
名前の通り、オーディオミキサーのアセットを作成します。
全体のボリュームを調整したり、ピッチ調整、サウンドにエフェクトをかけたりできます。
ギターのエフェクターをいじったことのある人だったらなんとなく分かるかも。あとDTMやってる人なら「おっアレじゃん」とすぐに内容が分かるかもしれません。
同じチームでサウンド担当の人がいるなら、DAW側でこうした調整をしてくれると思います。
このAudioMixerを使う場面というと、アセットストアで購入した曲やフリー音源を使う際にUnityで調整したい! なんて時でしょうか。オーディオ編集ソフトがない場合は、Unityのこの機能を使えば無料である程度の調整ができます。
レンダリング系アセットの作成
5番目の領域はレンダリング系アセットの作成を行う機能です。画面への描画を行う機能に関するファイルたちです。
Material
マテリアルを作成します。
マテリアルはテクスチャを保持したり、色を設定したり、質感を設定できるファイルです。
最初のうちはテクスチャを貼る機能、色を変える設定だけ使えれば十分だと思います。真っ白なオブジェクトが並んでいるゲーム画面は寂しいですもんね。
Lens Flare
レンズフレアの設定を保持するアセットを作成します。
レンズフレアとは、カメラのレンズ内で発生する光の屈折を表現したもの。下の画面のようなイメージね。
レンズフレア用のテクスチャの設定、色、大きさなどを決めるのがこのアセットです。
メニューから作成して1から設定していくのはしんどいので、アセットストアにあるStandard Asset(無料)をインポートし、そこにあるレンズフレアの設定ファイルをカスタマイズしていくのがいいと思います。
レンズフレアをGame画面で出力するには、Lens Flareコンポーネントを持ったオブジェクトをシーンに配置し、カメラにFlare Layerコンポーネントをアタッチします。以前はデフォルトのカメラにFlare Layerコンポーネントがアタッチされていたのですが、2018.3だと自分でアタッチしないといけなくなりました。
Render Texture
カメラで表示した画像を別のオブジェクトで表示できるテクスチャを作成します。カメラの画像を映し出すための出力先みたいなイメージです。
カメラコンポーネントの中には「Target Texture」の項目があります。ここにRender Textureで作成したファイルを指定することで、このカメラの映像をテクスチャとして使うことができます。
試しにMain Cameraとは別にもう1台カメラを用意して、画面右奥のオブジェクトを映し出すようにしてみました。この映像がRender Textureに出力されています。
出力されたテクスチャをマテリアルで指定、そのマテリアルをQuadなどのオブジェクトに貼り付けることで、スクリーンが出来上がります。ライブでよくあるスクリーン映像みたいに使えます。
よりライブっぽくするならドットパターンのマテリアルを入れるといい感じです。
何個かゲームを作った後に手を出すと、色々遊べて楽しい機能です。
Lightmap Parameters
ライティングの設定を保持するアセットです。
ライティング、特にライトマップの設定がここにあります。Unityでは、直接光の影響だけではなく、光が当たった物体からの反射(間接光)についても計算し、画面の描画に反映してくれる機能・グローバルイルミネーション(GI)があります。
このGIではリアルタイムでの計算の他に、動かないオブジェクトなどについては事前に光の反射を計算し、画像として保持する機能があります。この画像がライトマップです。
このアセットはライトマップを生成する際の設定を持っていて、解像度だったり、アンチエイリアスの設定だったりを入れることができます。
屋外や屋内、イベントシーンなどでは、それぞれ求められるライトマップの精度が異なります。屋外なら多少ぼやけてても気になりませんが、屋内などでは解像度を上げて綺麗に見せた方がユーザにとって嬉しいはずです。なので、このアセットを使って、設定を分けておくと便利なんです。
……と解説してみましたが、ライティングに手を出すと、とても楽しくてゲームの完成が遅れていく沼となっています。
概要だけ掴みたい方は以下の記事もご参照あれ。
Custom Render Texture
上で紹介したRender Textureの機能が拡張されたCustomRenderTextureファイルを作成します。
どの点がカスタムかというと、シェーダーを使ってテクスチャを生成したり、頂点もいじっちゃうぜ! みたいなこともできます。
これに関しては凹みTipsさんの記事がとても勉強になります。
初心者のうちから手を出すと心が折れるかもしれません。なにせシェーダースクリプトを書いたりするので。
といった所でイカ、次回
「シーン系アセットの作成」から「レンダリング系アセットの作成」までの3つの領域について内容を確認しました。
今回扱った中で使う頻度が高いのはSceneとMaterialあたり。どこから作成できるかだけ覚えておけばなんとかなります。
次回はスプライト系アセットの作成、アニメーション系アセットの作成、タイムラインアセットの作成の領域です。項目名でいうと『Sprite Atlas』から『Timeline』までの解説です。
ゲーム開発の攻略チャートを作りました!
-
前の記事
【Unity】AssetsメニューのCreateを解説(フォルダ、スクリプトの作成)【初心者向け】 2019.05.16
-
次の記事
【Unity】AssetsメニューのCreateを解説(スプライト、Timeline)【初心者向け】 2019.05.18
コメントを書く