1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

# Unity URP で “影付き 2D ライティング” を構築するメモ

Posted at

image.png

目的
・URP を使って 2D プロジェクトに“ちゃんと影の付く”ライティング環境を構築したい

内容

URP を使う 2D プロジェクトで Spot Light 2D + シャドウを動かすまでの最小手順。
「Spot Light がメニューに出ない」問題の回避策も含めています。

sample.gif


1. 動作環境

ツール バージョン
Unity 2022.3.42f1 LTS
Universal Render Pipeline 14.0.8

※URP 11以上でないと2D Spot Lightが実装されません。

実装には、 @sebunwork009 さんの「Unity で 2D 影ライティングを実装する」記事 を参考にさせていただきました。


2. 準備

2-1. URP パッケージを導入

・Package Manager で Universal RP をインストール
URP install

2-2. URP Asset (with 2D Renderer) を生成

Project ▸ Create ▸ Rendering ▸ URP Asset (with 2D Renderer)

create asset

生成されるファイル

ファイル名 役割
MyURPAssets.asset パイプライン共通設定
MyURPAssets_Renderer2D.asset 2D Renderer Data

2-3. Project Settings に割り当て

  1. GraphicsScriptable Render Pipeline SettingsMyURPAssets を設定

graphics
2. Quality → すべてのレベルの Render Pipeline AssetMyURPAssets に統一
quality

3. つまずきポイント: Spot Light 2D がメニューに無い

Hierarchy で Light ▸ 2D を開いても Spot Light が無い場合:
・Renderer Data がまだデフォルトになっていない可能性が高いです。
image.png

解決策 : Renderer List に 2D Renderer(Data) を登録

  1. Create ▸ Rendering ▸ URP ▸ 2D Renderer (Data)
  2. MyURPAssets.asset を選択 → Renderer ListSize2
  3. 空欄 (Element 1) に ❶ をドラッグし、Default Renderer1 に設定

詳細
1.2D Renderer(Data) を作成して紐付け
・Project Window で右クリック → Create ▸ Rendering ▸ URP ▸ 2D Renderer (Data)
image.png

2.MyURPAssets.asset を選択し Inspector を開く
Renderer List の Size を 2 に増やし Element に My2DRenderer(Renderer Data) をドラッグ
Default Renderer を 1 に変更(Element 1 を使うという意味)

3.セットしたRenderer DataをDefaultにする
image.png

これで Light ▸ 2D ▸ Spot Light が出現。

動作確認
Hierarchy で 右クリック ▸ Light ▸ 2D → Spot Light が現れれば OK
Sprite の Material が Sprite‑Lit Default でないと光が当たらないので注意

image.png


4. ライト & 影の設定フロー

4-1. 背景スプライトを置く

ライト作成手順
Hierarchyに背景として9-Slicedを作成
image.png

4-2. Spot Light 2D を追加

image.png

Spot Light 2Dを配置すると、背景が黒くなり、ライトに照らされた範囲が照らされます。
image.png

例)ライトの設定
・Outer Spot Angle : 40
・Radius Outer 2.5
・Color 黄色に変更
これで、懐中電灯の明かり様になります。

4-3. シャドウを付ける

照らされたオブジェクトの影になる部分に光を通さない設定
image.png

1)ライトに照らされるオブジェクトとしてTriangleを配置。
・Add Component から、Shadow Caster 2Dをアタッチ
・項目の、Edit Shapeをクリックして、Sceneで形をトライアングルの形に合わせる。
image.png

2)照らしているライトのInspectorから「Shadows」にチェックを入れ、Strengthを1にする。
image.png
これで、オブジェクトであるTraiangleにさえぎられる部分の光は通らなくなります。

5. 背景が真っ暗なときは Global Light 2D を併用

以上で、ライト設定はできましたが背景もライトが当たっていないと真っ暗になってしまいます。
そのため、LightのGlobal Light 2Dを加えるて色を設定すると背景も含めオブジェクトの色が反映されるのでお勧めです。
image.png
Light ▸ 2D ▸ Global を 1 つ追加し、薄い灰色や水色で Color / Intensity を調整すると
ベース光 + スポットライトの演出が両立します。

6. チェックリスト

確認項目
URP 11 以上を使用しているか
URP Asset を with 2D Renderer で生成したか
Renderer List に 2D Renderer(Data) を追加し Default に設定したか
スプライトの Material が Sprite-Lit-Default
Global Light 2D でベース光を入れているか

以上、参考になれば幸いです。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?