ひとりでのアプリ開発 - fineの備忘録 -

ひとりでアプリ開発をするなかで起こったことや学んだことを書き溜めていきます

Unity:Light2Dの使い方

初めに

 Unity の URPの機能であるLight2Dについて、使い方やプロパティなどをまとめます。

準備

 Light2D を使うには、事前に Light2D を有効化する必要があります。

  1. Universal Render Pipeline Asset、Renderer 2D Data を作成し、Universal Render Pipeline Assetの設定を行う
    Project 内で右クリック > Create > Rendering > URP Asset(With 2D Renderer)をクリックすることでここまでができます。

  2. Project Settings の各種設定をする
    (Graphics)

    (URP Global Settings)

    (Quality)

 2D URP でプロジェクトを作成した場合は、初めからほぼ設定が終わっています。Quality の部分のみ、設定がされておらず None になっているので、そこの設定だけ必要になります。

Light2D の作成

 Hierarchy で右クリック > Light で Light2D を作成することができます。

 Light2D は下記のような種類があります。

  • Sprite Light 2D
  • Spot Light 2D
  • Global Light 2D
  • Freeform Light 2D

Light 2D の種類

Sprite Light 2D

 Sprite Light 2D は選択した Sprite の形のライトです。デフォルトでは Sparkle という Sprite が指定されています。

youtu.be
youtu.be

Spot Light 2D

 Spot Light 2D はある一点からライトで照らします。


Global Light 2D

 Global Light 2D はシーン全体を均一に照らします。

Freeform Light 2D

 Freeform Light 2D ではライトの形を自分で変えることができます。

 Inspector の Edit Shape をクリックすると Scene ビューからライトの形を変更することができます。

 Freeform Light 2D を作成するときに、作成時のライトの形を選ぶことができます。

プロパティ

 プロパティについて、いくつかピックアップして説明します。

Light Type

 Sprite Light 2D、Spot Light 2D、Global Light 2D、Freeform Light 2D の4種類から選択できます。作成後も変更が可能です。

Intensity

 ライトの明度です。デフォルト値は 1 です。数値が大きくなると明るくなり、数値が小さくなると暗くなります。最小値は 0 です。

明度 0.5 2.0
画像
Blend Style

 Blend Style は Render 2D Data のLight Blend Style で設定してあるなかから設定できます。

(デフォルト設定)

  • Multiply
  • Additive
  • Multiply with Mask(R)
  • Additive with Mask(R)

 Multiply は乗算、Additive は加算です。with Maskは、マスクでライトがあたる場所をを制御できます。(R) と書いてあるのは、マスクテクスチャチャンネルを Red に指定しているからです。

Light Order

 同じソートレイヤーの他のライトに対するこのライトのレンダリング順序を指定します。値が低いライトが先にレンダリングされます。負の値も有効です。

Shadow Strength

 Shadow Caster 2D がこのライトを遮るときの光の量をスライダーで制御します。0 (ライトを遮らない) から 1 (ライトをすべて遮る) の間で値を指定します。

 Sprite に Shadow Caster 2D コンポーネントをアタッチします。

 Light 2D の Shadows の Strength にチェックをいれ、スライダーで数値を制御します。


Volumetric

 Volumetric Light は霧の中の光のような表現です。

(Volumetric Lightについて)
en.wikipedia.org

 ボリュメトリックライティングの不透明度をスライダーで選択します。0 (透明) から 1 (不透明) の間で値を指定します。

Intensity 0 1
画像

 Volumetric Shadow Strength は Shadow Caster 2D がこのライトを遮るときのボリュメトリックライトの量をスライダーで制御します。0 (ライトを遮らない) から 1 (ライトをすべて遮る) の間で値を指定します。