URP 2Dで複数のカメラを使って描画する
今回はUnityのURP2Dで複数のカメラを使ってゲーム画面に表示させる方法を紹介したいと思います。
私は自分の2Dゲームでミニマップなどを表示したいときにこの方法を使います。
このような感じで疑似3Dとは別に見下ろし2Dのミニマップを表示させるのに活用しています。
複数のカメラを使ってみたい方は是非最後までお読み下さい。
Unityプロジェクトの作成
それでは新規プロジェクトを作成します。
今回はテンプレートで2D(URP)というものを選択します。
図のようにUnityHub新しいプロジェクトから2D(URP)を選択して下さい。
URPについて
簡単にURP(Universal Render Pipeline)について書いておきます。
まず、レンダリングパイプラインとはグラフィックの描画にかかわる仕組みだそうです。
そしてUnityにはいくつかレンダリングパイプラインがあります。
- ビルトインレンダリングパイプライン
- SRP(スクリプタブルレンダーパイプライン)
- HDRP
- URP
1つ目のビルドインレンダリングパイプラインは従来のレンダリングパイプラインです。
2つ目のSRP(スクリプタブルレンダーパイプライン)はUnityの新しいレンダリングパイプラインです。
C#スクリプトによって色々細かい調整などが出来るそうです。
しかしゲーム開発する際に描画システムを自作するのは大変ということでUnity側で準備してくれているテンプレートがHDRPとURPだそうです。
URPの特徴は下記のようです。
- 描画の処理が軽い
- 様々なプラットフォームに対応している
- Shader Graph等の新機能
描画に関しては詳しく紹介されているサイトがありますので、是非そちらを参考にして下さい。
必要なものを設置していく
描画するゲームオブジェクトとLayer設定
プロジェクトが立ち上がったら描画するオブジェクトを置いていきます。
SquareとCircleの2つのオブジェクトを作りました。
次にCircleのLayerを変更します。
InspectorでLayerを選択し、Add LayerでSubLayerを新たに作りCircleのLayerに設定しました。
複数のカメラ
続いてCameraを新たに追加しましょう。
今回はSubCameraという名前にしました。
ポジションを設定します。
一旦X、Y、ZをそれぞれMain Cameraと同じ0、0、-10とします。
次にSubCameraのAudio Listenerコンポーネントを削除しておきます。
同じSceneに複数のAudio Listenerがあると注意的なものがログに表示されるのでやっておきましょう。
続いてSubCameraの方のRender TypeをOverlayに変更します。
そしてRenderRingのCulling MaskをEverythingからこのカメラで描画したいSubLayerに変更します。
MainCameraのInspectorにあるStackにSubCameraを追加します。
黄色のCircleの中に黒い丸が表示されました。
この黒い丸がSubCameraで描画しているSubLayerのオブジェクトです。
黒くなっている理由はSubLayerにライトが無いためです。
Global Light 2DのLayerをSubLayerにすることで解消されます。
SubCameraの調整
SubCameraのInspectorを調整して色々変更していきたいと思います。
TransformのPostionの値を変更することでSubCameraの描画する位置が変わります。
またProjectionのField of Viewの値を変更することで拡大縮小のような事ができます。
このように2台のカメラで描画してみました。
色々な使い方ができると思いますので、皆さんもご自身のゲームにご活用下さい。
Unityの学習方法
Unity初心者の方にオススメの学習方法をいくつか紹介します。
Unity本【kindle unlimited】
私も利用しているAmazonが提供する電子書籍読み放題のサービスです。
月額980円で約200万冊以上が読み放題でとてもお得です。
また30日無料体験もできるのが魅力です。当然Unityに関する書籍もたくさん揃っています。
またC#関連の書籍や、プログラミングのものも多数あります。
プログラミング関連の書籍は値段が結構しますので、それらが無料で読めるのはかなりお得なサービスです。
30日無料体験もありますので気に入らなければその期間に解約すれば料金は発生しません。
通常のUnity本
kindle unlimitedは全部のUnity関連書籍が読めるわけではありません。
通常に購入しなければ読めない本もありますので、その中から私が参考になった書籍を紹介します。
Udemy
Udemyの動画講座にもUnity関連のオススメの動画がたくさんあります。
その中でも私が特に気に入っている動画を紹介します。
どの動画も初心者でも完成することが出来るように丁寧に解説しています。
オンラインで学習
質問が出来るおすすめのUnity学習方法ページです。
・Unityでゲーム作りたいけど何から初めたら良いかわからない。
・独学でゲームを完成させられるか不安。
・ゲーム開発でわからないことを一人で解消できない。
・入門書を一通りやってみたが次に何していいかわからない。
こんな人におすすめしたい内容になっています。
最後までご覧頂いてありがとうございました。