🎮

【Unity error CS0619】Standard Assetsをインポートしたときのエラーの解決方法

2 min read

動画

https://youtu.be/G-ywWomgk9o


エラーテキスト

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

「GUIText は廃止されました」
GUITextは削除されました。代わりにUI.Textを使用してください。

日本語に訳すとこう書いています。

解決法

1.エラーで指定されたファイルを開く

Screenshot 2021-04-19 05-03-49_1.png
SimpleActivatorMenu.csを開く。
エラーコードをダブルクリックすると、目的のファイルを開いてくれます。

2.GUI.TextをTextに変更する。

SimpleActivatorMenu.cs内の

public GUI.Text camSwitchButton;

public Text camSwitchButton;

に変更。

3.UnityEngine.UIを追加する

同じくSimpleActivatorMenu.cs内に

using UnityEngine.UI:

の一行を追加する。


変更後のSimpleActivatorMenu.cs

using System;
using UnityEngine;
using UnityEngine.UI; // 追加

namespace UnityStandardAssets.Utility
{
    public class SimpleActivatorMenu : MonoBehaviour
    {
        // An incredibly simple menu which, when given references
        // to gameobjects in the scene
        public Text camSwitchButton; // GUIText -> Textに変更
        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に戻るとエラーが治っているはずです。

Discussion

ログインするとコメントできます