Unityで光源(ライト)を設定する方法【初心者向け】現役エンジニアが解説
Unityで【光源(ライト)】を設定する方法を初心者向けに解説した記事です。ライトがなければゲーム画面は真っ暗なので、最初に設定する必要があります。Directional Light、Point Light、Spotlightの3つを紹介。
テックアカデミーマガジンは受講者数No.1のプログラミングスクール「テックアカデミー」が運営。初心者向けにプロが解説した記事を公開中。現役エンジニアの方はこちらをご覧ください。 ※ アンケートモニター提供元:GMOリサーチ株式会社 調査期間:2021年8月12日~8月16日 調査対象:2020年8月以降にプログラミングスクールを受講した18~80歳の男女1,000名 調査手法:インターネット調査
ゲームエンジンのUnityで光源(ライト)を設定する方法について、テックアカデミーのメンター(現役エンジニア)が実際のコードを使用して初心者向けに解説します。
ゲームにおいてライトの仕組みを知ることは、大切な基本です。
Unityでは様々なライトが用意されており、ゲームの演出に合わせて選ぶことができます。
目次
そもそもUnityについてよく分からないという方は、Unityとは何なのかについて解説した記事を読むとさらに理解が深まります。

今回はUnityでの光源の使い方を練習してみよう。

田島メンター!!光源にはどんな役割があるんですか〜?

光源によってゲーム内の各オブジェクトに対して光や影の表現を加えることができるんだ。
ここでは「Directional Light」「Point Light」「Spotlight」の3つのライトについて説明するよ。

お願いしまーす!
ライトの種類
設定を始める前に、今回学習する3種類のライトについて簡単に説明します。
Directional Light
「太陽」のようにゲーム画面全体を照らします。
すべてのゲームオブジェクトに対して、均一に光を当てます。
最も一般的に使用するライトです。
Point Light
「電球」のようにライトの周囲を照らします。
ライトからの距離が遠いほど暗くなります。
Spotlight
「車のヘッドライト」のように円すい状の範囲内を照らします。
ライトから一定角度の範囲のみ明るくなります。
では、実際にライトを設定してみましょう。
事前準備
新しくプロジェクトを作成しましょう。
プロジェクト作成直後は、シーン上に「Main Camera」と「Directional Light」が配置されています。
今回はライトの学習をしたいので、「Directional Light」を削除します。
Hierarchy上で「Directional Light」を選択して、Deleteキーを押します。
Hierarchy上から「Directional Light」がなくなれば成功です。
次に、ライトに照らされる対象として、球(Sphere)と平面(Plane)を作成します。
まずは、画面上部のメニューから[GameObject]→[3D Object]→[Sphere]と選択します。
作成した「Sphere」は、Y座標を「1」にします。
同様に、[GameObject]→[3D Object]→[Plane]と選択します。
「Plane」の座標は作成した状態から変更しません。
次に、画面を見やすくするため、カメラの位置を変えます。
「Main Camera」のY座標を「3」にします。
以上で準備完了です。
準備が完了したら再生ボタンを押してみましょう。
ゲーム画面は薄暗い状態です。
Unityのプロジェクトを新規作成で作った場合、ライトを設定しなくても薄暗い状態で画面が確認できるようになっています。
上記の画像の状態にライトを追加して、思い描く映像を作っていきます。

光源がない状態だとこんな感じになるよ。

これだとホラーゲームみたいですね……。

それでは各種ライトを反映させて違いを見てみよう。
Directional Lightの設定
まずは、[Directional Light]を作成してみましょう。
画面上部の[GameObject]→[Light]→[Directional Light]と選択します。
Directional Lightに座標の設定は不要ですが、他のライトと比較しやすいようにY座標を「3」にします。
Directional Light の座標設定が終わったら、再生ボタンを押してください。
ゲーム画面が明るくなりました。
ライトの向きを設定すると、影の映り方を変えることができます。
[Inspector]タブの[Transform]で、[Rotation]の[X]を「90」、[Y]を「0」としてください。
光が真上から当たるようになりました。
Point Lightの設定
次に、[Point Light]を作成してみましょう。
まずは、先ほど作成した「Directional Light」を無効にします。
[Inspector]タブで、ゲームオブジェクト名の左にあるチェックボックスを解除します。
そして、画面上部の[GameObject]→[Light]→[Point Light]と選択します。
Y座標は「3」にします。
再生ボタンを押してみましょう。
「Directional Light」とは異なり、平面の外側ほど暗くなっています。
上記の画像の状態では少し暗いので、ライトの有効範囲を広げてみます。
[Inspector]タブの[Light]で、[Range]の値を「18」にします。
光の届く範囲が広がり、先ほどよりも明るくなりました。
Spotlightの設定
最後に、[Spotlight]を作成してみましょう。
まずは、先ほど作成した「Point Light」を無効にします。
[Inspector]タブで、ゲームオブジェクト名の左にあるチェックボックスを解除します。
そして、画面上部の[GameObject]→[Light]→[Spotlight]と選択します。
Y座標は「3」にします。
再生ボタンを押してみましょう。
ライトを起点にして、円すい状の範囲内のみ明るくなっています。
ライトの機能を確認するために、ライトの照らす角度を広げてみましょう。
[Inspector]タブの[Light]で、[Spot Angle]の値を「90」にします。
より広い範囲が照らされるようになりました。
ライトは明るさの調節もできます。
[Inspector]タブの[Light]で、[Intensity]の値を「3」にします。
先ほどよりも光が強くなっています。
今回の記事は以上です。
ライトの種類による違いを理解して、ゲーム制作に役立てましょう。

それぞれのライトの特性は分かったかな?場面によって有効な表現を選んで使ってみよう。

はい!同じ種類のものでも、設定によってまた雰囲気が変わってくるんですね。

Rangeによる光の範囲の調整や、座標による向きの変更などは必ず使うことになるので、基本の操作をしっかりおさえておこう。

ひととおり触って覚えてみます。ありがとうございました!
Unityを学習中の方へ
これで解説は終了です、お疲れさまでした。
- つまずかず「効率的に」学びたい
- 副業や転職後の「現場で使える」知識やスキルを身につけたい
Unityを学習していて、このように思ったことはありませんか?
テックアカデミーでは、第一線で活躍する「プロのエンジニア」が教えているので、効率的に実践的なスキルを完全オンラインでしっかり習得できます。
合格率10%の選考を通過した、選ばれたエンジニアの手厚いサポートを受けながら、はじめてでもUnityでオリジナルゲームの制作ができるようになります。
まずは一度、無料体験で学習の悩みや今後のキャリアについて話してみて、「現役エンジニアから教わること」を実感してみてください。
時間がない方、深く知ってから体験してみたい方は、今スグ見られる説明動画から先に視聴することをおすすめします!