Unityでゲーム内の環境光を時間の経過と共に変化させることで、よりリアルで魅力的なゲーム体験を提供できます。この記事では、Directional Light(方向光)を使って日没から夜、そして夜明けへと環境光を変化させる方法を初心者向けにわかりやすく解説します。
ステップ1:Directional Lightを配置する
まずは、シーンにDirectional Lightを配置しましょう。
- ヒエラルキーウィンドウで右クリックします。
- 「Light」→「Directional Light」を選びます。
これでシーンにDirectional Lightが追加されます。このライトは太陽や月の光をシミュレートするのに使います。
![](https://cbagames.jp/wp-content/uploads/2024/02/2024-02-16_161504.png)
ステップ2: Directional Lightの設定
Directional Lightがシーンに追加されたら、そのプロパティを調整して、自然な日の光をシミュレートします。インスペクターウィンドウで、光の強度(Intensity)、色(Color)、そして影の設定を調整できます。日中の設定としては、強度を1.0、色を明るい黄色に設定すると良いでしょう。
![](https://cbagames.jp/wp-content/uploads/2024/02/2024-02-16_161950.png)
ステップ3:スクリプトを作成する
次に、Directional Lightの角度や色を変化させるスクリプトを作成します。
- プロジェクトウィンドウで右クリックし、「Create」→「C# Script」を選びます。
- スクリプトに「LightRotate」と名前を付けます。
- スクリプトをダブルクリックして開き、以下のコードを入力します。
スクリプトを開いて以下のコードを記述してください。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class LightRotate : MonoBehaviour
{
void Update()
{
transform.Rotate(new Vector3(0, 60, 0) * Time.deltaTime);
}
}
ステップ4:スクリプトをDirectional Lightにアタッチする
- ヒエラルキーウィンドウでDirectional Lightを選びます。
- 作成した「LightRotate」スクリプトをドラッグ&ドロップでDirectional Lightにアタッチします。
ステップ5:ゲームを実行して確認する
これで準備完了です!ゲームを実行して、時間の経過と共に環境光が日没から夜、そして夜明けへと変化する様子を確認しましょう。
このようにして、UnityでDirectional Lightを使って簡単にゲーム内の環境光を変化させることができます。是非試してみてくださいね!
おすすめのアセット
Enviro 3 – Sky and Weatherは、Unityで使える強力な天候システムです。このアセットは、リアルな空模様や天気の変化を簡単に追加できるのが特徴です。たとえば、晴れ、雨、雪、雷などの天気を再現でき、昼夜のサイクルもサポートしています。また、視界の変化や風の強さも調整可能です。