Unity 2017以前のバージョンで開発したゲームアプリを最新のバージョンに変換時、大量にエラー「 'GUIText' is obsolete」が出てきました。
今回はその原因と解決法の紹介となります。

Assets/Particle_Dissolve_Shader/Scripts/HUDFPS.cs(26,23): error CS0619: 'GUIText' is obsolete: 'GUIText has been removed. Use UI.Text instead.'
【原因】
Unity 2017.2以前のバージョンでは Main Cameraに GUI Layerコンポーネントが組み込まれており、GUI Textコンポーネントがテキスト表示に使われていました。
現在は UIが uGUIに統一されたため、GUI Textが使用できません。
そのためのエラーでありエラー箇所をソース内で確認すると以下の様に GUITextコンポーネントを取得する部分となっています。

今回はその原因と解決法の紹介となります。

Assets/Particle_Dissolve_Shader/Scripts/HUDFPS.cs(26,23): error CS0619: 'GUIText' is obsolete: 'GUIText has been removed. Use UI.Text instead.'
【原因】
Unity 2017.2以前のバージョンでは Main Cameraに GUI Layerコンポーネントが組み込まれており、GUI Textコンポーネントがテキスト表示に使われていました。
現在は UIが uGUIに統一されたため、GUI Textが使用できません。
そのためのエラーでありエラー箇所をソース内で確認すると以下の様に GUITextコンポーネントを取得する部分となっています。

【解決法】
エラーのあるソース内を GUITextのコンポーネントから uGUIの Textコンポーネントに書き換えます。
<追加>
using UnityEngine.UI;
<変更>
前:GetComponent<GUIText>()
後:GetComponent<Text>()

エラーのあるソース内を GUITextのコンポーネントから uGUIの Textコンポーネントに書き換えます。
<追加>
using UnityEngine.UI;
<変更>
前:GetComponent<GUIText>()
後:GetComponent<Text>()

これで無事にエラーは無くなりました。
Sponsored Link