Unity 2019.4.14(LTS)でStandard Assetsを使用する

今回は、Unityの現行LTS(長期サポート)バージョン「Unity 2019.4.14f1」で「Standard Assets」を使用する方法を紹介いたします。

Standard Assetsとは

Standard AssetsとはUnity Technologies社公式が提供しているアセット集です。
3Dモデルのコンポーネントスクリプトやパーティクルのプリセット、Playerに追従するカメラなど開発の参考になるアセットが揃っています。

Standard Assets実行時のエラー

「Standard Assets」をUnity 2019.4.14(LTS)のプロジェクトにインポートして、そのまま使用しようとすると、プレイモードを実行する際に以下のコンパイルエラーが発生します。

Assets\Standard Assets\Utility\SimpleActivatorMenu.cs(11,16): error CS0619: 'GUIText’ is obsolete: 'GUIText has been removed. Use UI.Text instead.’

原因

Standard Assetsは旧バージョンの「Unity 2018.4」向けに作られており、現行バージョンの「Unity 2019.4.14f1」ではGUITextは廃止になったため、上記のエラーが発生します。

エラーメッセージにあるように「’GUIText’のかわりに’UI.Text’を使用」することで対処できます。

対処方法

問題となっているソースコード「SimpleActivatorMenu.cs」を以下のように編集します。
編集した行には「★」マークのコメントをつけています。

using System;
using UnityEngine;
using UnityEngine.UI; // ★この行を追加します

#pragma warning disable 618
namespace UnityStandardAssets.Utility
{
    public class SimpleActivatorMenu : MonoBehaviour
    {
        // An incredibly simple menu which, when given references
        // to gameobjects in the scene
        //public GUIText camSwitchButton; // ★この行をコメントアウトします
        public Text camSwitchButton;      // ★この行を追加します
        public GameObject[] objects;


        private int m_CurrentActiveObject;


        private void OnEnable()
        {
            // active object starts from first in array
            m_CurrentActiveObject = 0;
            camSwitchButton.text = objects[m_CurrentActiveObject].name;
        }


        public void NextCamera()
        {
            int nextactiveobject = m_CurrentActiveObject + 1 >= objects.Length ? 0 : m_CurrentActiveObject + 1;

            for (int i = 0; i < objects.Length; i++)
            {
                objects[i].SetActive(i == nextactiveobject);
            }

            m_CurrentActiveObject = nextactiveobject;
            camSwitchButton.text = objects[m_CurrentActiveObject].name;
        }
    }
}

以上でコンパイルエラーを回避することができ、「Unity 2019.4.14f1」でStandard Assetsを使用することが可能になります。

金曜日担当:nishida



アプリ関連ニュース

お問い合わせはこちら

お問い合わせ・ご相談はお電話、またはお問い合わせフォームよりお受け付けいたしております。

tel. 06-6454-8833(平日 10:00~17:00)

お問い合わせフォーム