
Lesson 6.1 - セットにライティングを追加する
Tutorial
Beginner
+0XP
40 mins
(24)
Unity Technologies

この授業では、Unity のライティングのニュアンスを深く掘り下げていきます。まず、セットのさまざまな領域にポイントライト(Point Lights)とスポットライト(Spotlights)を追加して、雰囲気と臨場感を作ります。
1. 授業の概要
2. ポイントライトやスポットライトを使ったライティングの設定
ここまでは、主にディレクショナルライトに頼ってきました。この授業では、Unit 3 で紹介したポイントライト(Point Lights)とスポットライト(Spotlights)を組み合わせて、プロジェクトのライティングを個別のライティング条件で構成していきます。これらの様々なライティング条件を設定し、その特性をカスタマイズする方法を学びます。
1. Unit6_StarterFiles はこちらからダウンロードしてください。フォルダーを解凍してパソコン上の整理された場所に移動し、Unity Hub にプロジェクトを追加して開きます。
2. Assets > Scenes の順に選択し Unit 6 シーンを開きます。
3. ディレクショナルライトを削除するには、Hierarchy で選択して右クリックし、Delete を選択します。
まず最初に、すべてのライティングアセットを組み込むために、整理されたフォルダー構造を作成します。
4. トップメニューのドロップダウンから GameObject > Create Empty の順に選択して、空のゲームオブジェクトを作成します。これを Lighting という名前に変更し、Inspector で位置座標を X=0、Y=0、Z=0 に設定します。
新しく作成した Lighting ゲームオブジェクトの中で、3 つのシーンロケーションを別のゲームオブジェクトのカテゴリーとして整理します。
5. トップメニューのドロップダウンから GameObject > Create Empty の順に選択します。AlleyLighting と名前を変えて、Inspector で位置座標を X=0、Y=0、Z=0 に設定します。さらに 2 つの空のゲームオブジェクトを作成し、StreetLighting と ShopLighting に名前を変更し、Position(位置座標)を X=0、Y=0、Z=0 に設定します。
6. これら 3 つの GameObject を選択して Hierarchy ウィンドウの Lighting ゲームオブジェクトへドラッグすることで、これら 3 つのゲームオブジェクトを Lighting オブジェクトの子として整理します。(画像 01)。
3. 路地にポイントライトを追加する
現在、シーンは暗すぎてナビゲートしづらいです。Scene Lighting Toggle ボタンを使用して、Game ビューで見たようなシーンライティング、またはデフォルトの Scene ビューのカメラのライティングを切り替えることができます。
Scene Lighting Toggle ボタン(画像 02)を選択して、編集のためにシーンをより目に見えるようにします。
これから路地シーンの場所へライトを追加していきます。
1. Scene ウィンドウでビューの向きを調整し、路地の端にあるドアの上に、最初のポイントライトを配置する場所を設定します。
2. トップメニューのドロップダウンから GameObject > Light > Point Light の順に選択して Point Light を作成し、Door_Blue_Light に名前を変更します。Point Light がシーンに追加されました。Hierarchy 内の Point Light を AlleyLighting ゲームオブジェクトの子になるように整理します。
次に、Door_Blue_Light の X、Y、Z 座標を変更し、ポイントライトをシーン内の出入り口の前の中央に位置するように配置します。
3. 移動ツールを使用するか、Inspector ウィンドウの座標の値を調整して、Door_Blue_Light の Transform 位置を X=8.5、Y=3.4、Z=0.2 に設定します。
Hierarchy ウィンドウで Door_Blue_Light が選択されていると、Inspector に警告メッセージが表示され、シャドウがリアルタイムで間接的に「跳ね返る」ことができないことが説明されています。次のステップで Multiplier の値を 0 に設定すると、この警告が解除されます。
4. Indirect Multiplier を 0 に設定します。
5. ライトの色を変更するには、Color フィールドを選択し、ポップアップウィンドウの色を青系の色に変更します。
6. ライトの Range を 8 に下げて、ライトが中心から放出される距離を減らします 。
7. Intensity を 6 に変更して明るさを上げます。
8. レンダリングのパフォーマンスを向上させるためには、Render Mode を Important に変更してください。
結果としてのライトは、Range と Color、Intensity のプロパティに加えられた変更を表示します。希望する結果を見るために、Scene View Lighting をもう一度トグルしてください。シーンには、 Indirect Multiplier と Render Mode の設定が含まれていますが、これについては後ほど詳しく説明します(画像 03)。
Scene ウィンドウでズームアウトすると、ライトの範囲が球(Sphere)のように表示されます(画像 04)。
開発プロセスの中で、ライティング条件をプレビューするために、シーンのライティングのトグルボタンをトグルする必要がある場合があります。
9. シーンの Lighting プロパティを表示させるために、電球のアイコンで表されるシーンのライティングのトグルボタンを選択します (画像 05)。これは、シーンの現在のライティング状態を表示します。シーンライティングのトグルボタンを無効にするには、もう一度選択して、シーンライティングのトグルボタンを無効にし、シーンライティングなしのセットを表示します(画像 06)。
4. 路地にスポットライトを追加する
今回はスポットライトを使って、新しいライトを追加する作業を繰り返します。
1. トップメニューのドロップダウンから GameObject > Light > Spotlight の順に選択し、Door_White_Light に名前を変更します。スポットライトがシーンに追加されました(画像 07)。Hierarchy で Spotlight を整理して、AlleyLighting ゲームオブジェクトの子にします。
ここでも、シーンの希望するライティング条件に合わせて、ライトのプロパティを変更して調整します。
3. Inspector ウィンドウで X、Y、Z の位置を X=6.5、Y=3.6、Z=0.2 に変更して、スポットライトの位置を設定し、出入り口も照らすようにします。
4. X、Y、Z 軸の Rotation を X=106、Y=274、Z=192 に変更してスポットライトの方向角を回転させます。
5. ライトの Range を 6.6 に下げて、ライトの照らす範囲を減らします。
6. Intensity を 12 に変更して輝度を上げます。
7. Indirect Multiplier を 0 に設定します。
8. スライダーを選択し、 Inner / Outer Spot Angle の値を調整します。Inner Angle を 25 に、Outer Angle を 60 に広げることにより内角 / 外角を調整します(画像 08)。
9. ライトの配置で影を落とす機能を有効にするには、Shadow Type を Soft Shadows に設定します。Render Mode を Important に設定します。
ライトのプロパティで変化を、特に犬のキャラクターから投げられる影の結果を見ることができます(画像 09)。
犬のキャラクターは、他の 3D ゲームオブジェクトと同じように、プロパティを指定すると影を投じることができます。
10. Dog ゲームオブジェクトが影を投じるようにするには、まず Hierarchy ウィンドウで Animated と書かれたゲームオブジェクトを開いて、Dog GameObject を選択します。次に、Dog_Animated を選択します。Dog_Animated GameObject を開き、DogMesh を選択します。Inspector ウィンドウで、Skinned Mesh Renderer フィールドの三角形を展開するように選択します。Lighting カテゴリーで、犬の Cast Shadow フィールドが On に設定されていることを確認します(画像 10)。これは、犬のジオメトリが、シャドウキャスティングライトがオブジェクト(ドアの上の白い光など)を照らすときに影を作ることを指定しています。
5. 路地を照らすライトを増やす
シーンにライトを追加するために、猫のキャラクターの上にあるもう一つの路地のドアの横に別のスポットライトを配置します。
1. Hierarchy ウィンドウで Door_White_Light GameObject を選択して右クリックし、Duplicate を選択して Spotlight の複製を作成します。シーンに複製が追加されます。Secondary_Door_White_Light に名前を変更します。Hierarchy 内の Spotlight を AlleyLighting ゲームオブジェクトの子になるように整理します。
2. ライティングを試して、ライトのプロパティを調整する練習をします。このシーンでは、Spotlight のプロパティを調整して、猫のキャラクターがを照らすようにします(画像 11)。
3. Hierarchy で Door_Blue_Light という名前の既存のポイントライトを選択して右クリックし、Duplicate を選択して複製します。または、GameObject > Light > Point Light の順にトップメニューのドロップダウンから選択し、Alley_Purple_Light と名前を変更して、新しい Point Light を作成します。Point Light が Hierarchy 内で AlleyLighting ゲームオブジェクトの子になるように整理されていることを確認してください。
4. Alley_Purple_Light を猫のキャラクターの上と左に、X=3.4、Y=2.4、Z=0.8 の位置に配置します。
5. Alley_Purple_Light のプロパティを設定して、以下の例で説明されているように、シーンに光り輝く雰囲気と色を追加します(画像 12)。
6. 路地をさらに下って通りに向かって移動し、シーンの新しい位置に別のポイントライトを配置します。名前を Alley_Red_Light に変更します。ライトのプロパティを調整して、下の画像のようにシーンに色を追加します(画像 13)。
7. 既存のポイントライトを複製するか、別の新しいポイントライトを追加して、建物の上部にあるランプを照らすようにします。それを Top_Tower_Light という名前に変更します。Point Light が Hierarchy 内で AlleyLighting ゲームオブジェクトの子になるように整理されていることを確認します。 近くの建物の上部にズームインされた高い位置に Scene ビューを配置し、Hierarchy ウィンドウで Top_Tower_Light を選択した状態で、GameObject > Align With View の順に選択するか、ライトの座標を X=0、Y=8.4、Z=4.55 に直接配置します。Top_Tower_Light のプロパティを調整して、より高い光源の視点からシーンを照らすようにします(画像 14)。
8. 既存の Spotlight を複製するか、新しい Spotlight を追加して、Corner_Light に名前を変更して、路地シーンにもう 1 つのライトを追加します。Spotlight が AlleyLighting ゲームオブジェクトの子になるように Hierarchy 内で編成されていることを確認してください。Scene ビューを、街角を示す見晴らしの良い場所に配置し、Hierarchy ウィンドウで Corner_Light を選択した状態で、GameObject > Align With View の順に選択するか、ライトの座標を X=3.6、Y=3.7、Z=2.5 に直接配置します。回転を X=105、Y=110、Z=0 に設定して、Corner_Light の Inner / Outer Spot Angle を 17 と 120 に調整して、シーン内の路地と街角の間に広角の円錐状のライトが得られるようにします (画像 15)。
6. Hard Shadow / No Shadow でショップライティングの追加
チェイスシーンのアニメーションが通りを移動すると、Cinemachine のバーチャルカメラが歩道のお店にパンします。3 つのライトを組み合わせて、Intensity や Orientation、Position を設定して、カウンターの後ろにいるアニメーションのキャラクターを照らすようにします。
1. 楽しいチャレンジとして(画像 15)の例のライティング条件に近づけるようにお店を照らします。ポイントライトとスポットライトの組み合わせを作成します。それらのライトを適切な階層の位置に編成します。それらの Positions とそれらが持っているかもしれない任意の Rotation 角度を設定します。
2. Range や Angle、Color、Intensity の調整値を含む lighting プロパティを設定します。
3. Shadow Type を Soft(ソフト)、Hard(ハード)、または No Shadows(影なし)に設定します。
Hard Shadow のプロパティ設定は、シャープなエッジを持つシャドウを生成します。Hard Shadow は、Soft Shadow に比べて特にリアルではありませんが、グラフィカルな処理が少なくて済むので、多くの目的には適しています。芸術的な判断として、または光源で影をつけたくない場合は、Shadow Type を No Shadows に設定してください。
ショップは、スポットライトとポイントライトの組み合わせで点灯するようになりました(画像 16)。
7. まとめ
Unity のライティングシステムは、洗練された多様性に富んだ高品質な視覚効果を生み出します。シーンでのライティングの作成プロセスは、直感的で柔軟性が高く、高度な特殊性を備えており、ライティングシステムは様々な条件に合わせて適応させることができます。Unity のライティングは、ライトそのものだけでなく、そのライトが落とす影や、範囲、角度、色、強度などの追加機能によって、シーンを強調することができる視覚的忠実度を提供します。