Unity 2019+ 이상의 버전에서 standard assets 사용하는 방법

불행히도 Unity측에서는 2018.4 버전 이후로는 standard asset를 내놓고 있지 않는데요. 2019 버전 이후로 내부 함수들이 많이 바뀌어서 standard asset 사용시 컴파일 에러를 발생시킵니다.
본 글에서는 해당 컴파일 에러를 해결할 수 있는 방법을 소개하겠습니다.

먼저 Assets/Standard Assets\Utility/SimpleActivatorMenu.cs 파일을 메모장이나 에디터로 여신 뒤, 아래 코드에서 ★ 쳐져있는 줄 부분을 수정해주시면 됩니다. 
Unity 2019버전에서는 GUIText가 제거되어 UI.text를 사용해야 한다고 하네요.

using System;
using UnityEngine;
using UnityEngine.UI; // ★ 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; // ★GUIText 대신 text사용
        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;
        }
    }
}

테스트해본 버전은 2019.4.29f1입니다.

댓글 없음:

댓글 쓰기

글에 대한 의문점이나 요청점, 남기고 싶은 댓글이 있으시면 남겨 주세요. 단 악성 및 스팸성 댓글일 경우 삭제 및 차단될 수 있습니다.

모든 댓글은 검토 후 게시됩니다.

Translate