koma blog

Unreal Engine 4やUnity 5についての記事を書きます

【Unity】 スクリプトからSkyboxを変更する

Skyboxの用意

まずはUnityを起動してAsset Storeを開き、Skyboxのアセットをインポートします。

f:id:koma2961:20150731201424p:plain

今回は無料のSky5X Oneを使用します。

インポートが終了したら準備完了です。

f:id:koma2961:20150731201439p:plain

スクリプトからSkyboxを変更する

Skyboxを変更するためのスクリプトを作成します。

//__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/
//
// ▼ File		SkyboxChanger.cs
//
// ▼ Brief		Skyboxを変更するスクリプト
//__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/__/
using UnityEngine;
using System.Collections;

public class SkyboxChanger : MonoBehaviour
{
    // Skyboxのマテリアル
    public Material skybox;

    void Start()
    {
        // Skyboxを変更する
        RenderSettings.skybox = skybox;
    }

    void Update()
    {
    }
}

スクリプトを任意のGameObject(画像ではMain Camera)にアタッチします。
f:id:koma2961:20150731220828p:plain
f:id:koma2961:20150731221504p:plain
するとインスペクターにSkyboxの項目が追加されるので先ほどインポートした任意のSkyboxを
ドラッグ&ドロップします。
f:id:koma2961:20150731224216p:plain
実行するとアタッチしたSkyboxに変わっています。
f:id:koma2961:20150731224413p:plain

エディタからSkyboxを変更する

Unity4のときはEdit > Render SettingsからSkyboxを変更出来ましたが
Unity5ではWindow > Lightingに変わりました。
f:id:koma2961:20150731225513p:plain
Environment Lighting > Skyboxに先ほどインポートした任意のSkyboxを
ドラッグ&ドロップすることで変更することが出来ます。
f:id:koma2961:20150731230046p:plain