0:00:01.257,0:00:04.354 2D ゲームを制作している時 項目の描画順序は 0:00:04.354,0:00:07.390 細かく制御できければなりません 0:00:08.180,0:00:10.180 ひとつの方法としてはカメラとスプライト間の距離を 0:00:10.180,0:00:12.612 利用する方法がありますが 0:00:13.440,0:00:15.440 Unity ではこの他にも強力な 0:00:15.440,0:00:17.177 制御ツールがあります 0:00:17.567,0:00:19.094 それが Sorting Layer(ソーティングレイヤー)です 0:00:20.164,0:00:22.360 Sorting Layer は Sprite Renderer と 0:00:22.360,0:00:24.906 組み合わせて使用し カメラからの距離に関係なく 0:00:24.906,0:00:27.298 スプライトの描画順を指定します 0:00:28.221,0:00:30.454 ソーティングレイヤーには単一のスプライト以外に 0:00:30.454,0:00:32.454 スプライトのグループも割り当てられます 0:00:32.982,0:00:35.765 これらのレイヤーには並び順が指定され 0:00:36.445,0:00:38.764 ソーティングレイヤーに含まれる項目は 0:00:38.764,0:00:40.917 指定順に従い カメラからの 0:00:40.917,0:00:42.917 距離に関係なく描画されます 0:00:43.541,0:00:45.541 なおカメラの枠内に存在しない 0:00:45.541,0:00:48.572 スプライトは描画されないので注意してください 0:00:49.486,0:00:51.946 またより詳細な制御が必要な場合には 0:00:51.946,0:00:54.320 各スプライトの Order In Layer フィールドに 0:00:54.320,0:00:56.320 個別に値を指定してソーティングレイヤー内での描画順を 0:00:56.320,0:00:58.320 細かく制御することもできます 0:00:59.193,0:01:01.028 Sorting Layers 設定項目は 0:01:01.028,0:01:03.028 Tags & Layers パネルにあり 0:01:03.970,0:01:06.191 このパネルには次の 2 種類の方法で 0:01:06.191,0:01:08.191 アクセスできます 0:01:08.815,0:01:10.815 ひとつめは Sprite Renderer コンポーネントで 0:01:10.815,0:01:14.516 Sorting Layer > Add Sorting Layer を選択する方法 0:01:15.320,0:01:17.347 ふたつめはエディター上で Edit > 0:01:17.347,0:01:21.657 Project Settings > Tags And Layers を選択する方法です 0:01:22.875,0:01:24.875 この Tags & Layers パネルでは 0:01:24.875,0:01:28.236 ソーティングレイヤーを追加 / 削除 / 順番変更できます 0:01:29.150,0:01:30.984 レイヤーのうちひとつはデフォルトで 0:01:30.984,0:01:32.984 必ず存在しています 0:01:33.885,0:01:36.852 デフォルトレイヤーは名前変更 / 削除はできませんが 0:01:36.852,0:01:38.852 順番変更することは可能です 0:01:39.739,0:01:42.675 新たにソーティングレイヤーを追加するには + ボタンをクリックします 0:01:43.368,0:01:45.368 ソーティングレイヤー名を変更するには 0:01:45.368,0:01:47.936 名前フィールドを選択して新しい名前を入力します 0:01:48.697,0:01:51.239 ソーティングレイヤーの順番を変更するには 0:01:51.239,0:01:53.827 単純に目的の位置までクリック&ドラッグします 0:01:54.595,0:01:56.637 ソーティングレイヤーは 0:01:56.637,0:01:58.500 上から下の順番に描画され 0:01:58.500,0:02:00.500 最初に描画された項目が奥に 0:02:00.500,0:02:03.656 最後に描画された項目が最後のレイヤーとして手前に描画されます 0:02:04.598,0:02:06.598 ソーティングレイヤーにスプライトを割り当てるには 0:02:06.598,0:02:08.598 まず割り当てるスプライトを選択して 0:02:08.598,0:02:10.598 その Sprite Renderer コンポーネントの 0:02:10.598,0:02:12.820 Sorting Layer ドロップダウンリストで 0:02:12.820,0:02:14.820 割り当てるソーティングレイヤーを選択します 0:02:15.541,0:02:17.541 同一ソーティングレイヤー内で複数スプライトの 0:02:17.541,0:02:19.541 描画順を細かく指定したい場合には 0:02:19.541,0:02:21.986 Order In Layer に値を指定します 0:02:22.801,0:02:24.801 仮にキャラクターを複数のスプライトで 0:02:24.801,0:02:26.926 構成していて それらスプライトが 0:02:26.926,0:02:28.926 同一ソーティングレイヤーに 0:02:28.926,0:02:31.409 属しているとします 0:02:31.882,0:02:34.091 そういった場合には そのソーティングレイヤーの 0:02:34.091,0:02:36.091 Order In Layer を細かく指定することで 0:02:36.091,0:02:39.312 キャラクターを構成するスプライトの描画順を指定できるのです 0:02:40.599,0:02:42.599 なおソーティングレイヤーと 0:02:42.599,0:02:44.890 Order In Layer はグローバルで Unity の 0:02:44.890,0:02:46.890 全レンダラーで利用可能です 0:02:47.514,0:02:49.998 インスペクターにプロパティを公開するのは 0:02:49.998,0:02:52.344 Sprite Renderer だけですが たとえば 0:02:52.344,0:02:55.348 パーティクルレンダラーでもソーティングレイヤーを 0:02:55.348,0:02:58.645 指定して Order In Layer を入力することはできます 0:02:59.394,0:03:01.658 他のレンダラーでソーティングレイヤーと 0:03:01.658,0:03:03.961 Order In Layer を使う場合には 0:03:03.961,0:03:05.961 スクリプトを使って値を割り当ててください 0:03:06.585,0:03:08.585 ソーティングレイヤーの指定に 0:03:08.585,0:03:12.761 renderer.sortingLayerName で名前や 0:03:13.813,0:03:16.914 renderer.sortingLayerID で ID を使うこともできます 0:03:17.718,0:03:20.310 また Order In Layer プロパティを指定するには 0:03:20.310,0:03:22.658 renderer.sortingOrder を使います 0:03:23.432,0:03:26.136 レンダラーや Tags & Layers 0:03:26.136,0:03:29.399 ソーティングレイヤーや Order In Layer の詳細については 0:03:29.399,0:03:31.758 下記リンク先の情報を参照してください