2Dでライティングが必要?いやあるとお手軽にリッチな表現ができるようになる。
松明の光、くらい洞窟、懐中電灯、魔法の光、アイディアは無限大。
URP(Universal Render Pipeline)へ変更
なにはともあれ、ライトを使用するにはURPへ切り替える。URP軽いらしい。
※切り替えるとマテリアルを設定しなおす必要があるので新規プロジェクトからURPにするのが無難。
Package ManagerからURPをインストール
Pacages Unity Registry > Universal RP
新しくフォルダを作り、Create > Renderring > URP Asset (with 2D Render
With Univaersal RendererにするとGrobal Light 2dが出てこないので注意
作成したRenderついていない方をProject SettingsのGraphicsに設定
Qualityにも設定
MaterialsがピンクになっていたらURPように変更する必要がある。
一括での変更は
Window > Rendering > Render pipeline Convert
Built in to 2D 切り替え
チェックをいれてinirialize converters
そのあとConvert Assetsに切り替わるのでそれもクリック
個別に設定するには変更したいMaterialを選択し
Edit>Rendering>Materials>Convert Selected Buit-in Materials to URP
で変更する。
使って見ようLight
MaterialのShaderをUniversal Render Pipeline > 2D > Sprite Lit defaultに設定。
Hierarchyで右クリック、Light>SpotLight 2Dを作成
明かりを作ってみる
懐中電灯の光のようなものを作ってみる。
Freeform Light2d > Squareを作成
Edit Shapeで光の形を変えることができる。
色も変えるとそれっぽくなる
同じものをコピーして元だけ強くするとさらにそれっぽくなる
別の方法ではSpotLightを使う。SpotLightは光の角度をAngleで設定できる。
光の種類まとめ
Grobal Light : すべて均等に光をあてる。太陽のひかり
Spot Light : ある一部のひかり
FreeForm Light : 自由な形状の光
使い分けよう。
影をつける
光といえば影。2Dではスクリプトをついかすることで影を追加することができる。
作ったSpot Light
すきなSprite(Triangleを追加した)を追加し、Add componentからShadow Caster2dを追加
Edit ShapeからSpririteの形に変更
TriangleをSpot Lightの前に持っていくと
影ができた!
Tips
特定のものだけに光を当てる
光はレイヤーで当てるものと当てないものの設定ができる。
Lightはレイヤーの機能があるためレイヤーごとに限定できる。
発展
Normal Map(法線マップ)と呼ばれるものを使えば2Dでもおうとつが表現できる。簡単に言うと、色が黒いほど膨らんでいて、白いほどたいらというファイルを設定することで出来るようになる。
少し難しい話になるので別の機会に。
URPでできること
その他URPでは
Shader Graph :シェーダーを視覚的に作成
VFX Graph : 新しいパーティクルシステム
ができるようになる。詳しくは各自調べてみいて
参考リンク