みーのぺーじ

みーが趣味でやっているPCやソフトウェアについて.Python, Javascript, Processing, Unityなど.

Unityにて複数のカメラを使う

Unityでは複数のカメラを使用することができますが,上手に利用すればとても便利なので,メモしておきます.

オブジェクトに印をつける

デモ

(マウスでドラッグしてカメラを動かします)

f:id:atsuhiro-me:20151122152943p:plain:w300

最初に,Cubeと印のテクスチャの2dスプライトを作成します.

それぞれのカメラにて描写を区別するためにレイヤーを作成します.レイヤーの設定画面から,User layer 8に StatusBarという名前で作成しました.

f:id:atsuhiro-me:20151104004439p:plain:w300

するとGameObjectのInspectorのLayerの選択肢に先ほど作成したレイヤーが追加されているので,印のGameObjectのレイヤーを先ほどのものに変更します.

f:id:atsuhiro-me:20151104004440p:plain:w300

2つ目のカメラを作成し,メインカメラの子にします.

f:id:atsuhiro-me:20151104004441p:plain:w300

設定は以下のとおりにします.

  • Clear Flags: Depth only
  • Culling Mask: StatusBars
  • Depth: 1

f:id:atsuhiro-me:20151104004442p:plain:w300

Clear FlagsをDepth onlyにすることで,メインカメラにて描写したものに上書きすることができます.

Culling Maskを先ほどのレイヤーに設定することで,同じGameObjectを複数回描写しないようにします.メインカメラのCulling Maskは先ほどのレイヤー以外に設定しておきます.

Rendering Depthはメインカメラよりも大きな数値なら大丈夫です.Depthの数値の小さいカメラから順番に描写が行われます.