오늘은 메타버스 게임을 만들기 위해 새로운 프로젝트를 파서 진행하려고 하는 데, Unity와 Visual Studio가 연동되어 있지 않아 자동완성이 안 되고 문법오류를 잡아주지 않아서 해결하는 데 많은 시간을 소요했다... 그래서 해결하기 위해 진행했던 방법들을 정리해보고자 한다.

유니티에서 C# Script를 파서 코드를 짜려고 할 때, MonoBehaviour를 인식하지 못하고, 이미지와 같이 Unity 키워드를 자동완성하려 할 때, 목록에 없는 모습이다.
이러한 증상이 Unity와 Visual Studio가 연동되지 않았다는 뜻이다. 이런 증상이 있을 때 어떻게 해결하면 좋을 지 하나 씩 알아보자.
유니티에서 Edit -> Preferences -> External Tools 경로로 들어가게 되면 아래와 같이 보인다.

여기서 위 이미지와 같이 External Script Editor를 Visual Studio로 변경해주면 된다.
*만약 자신이 원하는 버전의 Visual Studio가 없을 경우, Browse를 눌러 직접 Visual Studio를 지정해주는 방법도 있다.
사람마다 차이가 조금 있겠지만 나는 아래 경로에 Visual Studio가 설치되어 있다.
"C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\devenv.exe"
이 방법이 가장 보편적으로 Unity와 Visual Studio의 연동 오류를 해결하는 방법인데, 나는 이미 External Script Editor가 Visual Studio 2022로 설정되어 있었기 때문에 이 방법으로 해결할 수 없었다.
아래 이미지와 같이 Visual Studio Installer에서 Unity를 사용한 게임 개발을 체크해주고 관련하여 오른쪽 설치 세부 정보 탭에서 선택사항 부분까지도 확인한 후 설치해주면된다.


하지만! 나는 이미 이 모든 것들이 설치되어 있어서 이 방법으로도 해결하지 못했다...
이 방법은 구글링을 하다가 발견한 방법인데, 나는 솔루션 탐색기에 프로젝트가 0개라고 떠서 시도도 못해본 방법이다.
당연히 시도도 못해본 방법이기 때문에 이 방법으로도 해결하지 못했다...
유니티에서 Window -> Package Manager 경로로 들어가게 되면 아래와 같이 보인다.

이후 Package Manager 창에서 Unity Registry 탭으로 들어가서 Visual Studio Editor를 검색해서 다운로드 해주면된다. (나는 이미 설치되어 있어서 Remove가 뜨지만 설치되어 있지 않으면 Install이 뜬다)

나는 결국 이 방법으로 오류를 해결했다!!
사실 이 문제를 접한 것이 처음이 아닌데, 항상 1번 해결 방법으로 해결됐었다. 그런데 1번 해결 방법으로 해결이 안되니까 컴퓨터 재부팅뿐만 아니라 Visual Studio, Unity를 재설치하는 등등... 엄청 뻘짓을 했다... 다음에 또 이런 상황이 생기면 뻘짓하지 말고 꼭 이 글을 읽고 해결해야겠다.