Priv's Blog
macOS에서 Unity용으로 VSC 설정 시, 나타날 수 있는 대표적인 에러들 해결법 본문
출처
1. 개요
매킨토시에서 사용할 수 있는 Visual Studio는 윈도우 버전과 비교했을 때, 사실상 거의 텍스트 편집기 수준의 빈약한 성능을 자랑한다.
기능도 매우 적을뿐더러, 윈도우 버전을 오래 사용했음에도 UI 적응이 안 될 정도로 차이가 심하다.
하지만 다행스럽게도 Visual Studio Code는 매킨토시에서도 준 IDE급 성능을 내줄 수 있으며, UI도 동일하고, 애플 실리콘 네이티브 환경에서의 동작을 지원한다.
다만 Unity 에디터 설치와 함께 알아서 모든 설정을 다 해주는 Visual Studio와 달리, 개별적으로 설치해 수동으로 설정해줘야 하므로, 이런저런 에러들을 마주할 가능성이 높다.
여기서는 VSC를 Unity와 함께 사용하기 위해 설정하는 도중 마주했던 고질적인 에러들의 해결방안들을 살펴본다.
다만 VSC 설치, Unity 설치, C# extension 플러그인 추가, dotnet sdk 설치, mono sdk 설치 등에 대한 기본적인 내용은 생략한다.
이 부분은 그냥 말 그대로 설치만 하면 되기 때문에, 자료를 찾기도 쉽고 무엇보다 설치 과정에서 문제가 생길만한 점이 하나도 없다.
2. The .NET Core SDK cannot be located. 문제
출처
C# extension 플러그인을 설치한 이후 VSC를 재시동했을 때 가장 먼저 마주하게 되는 에러이다.
아마 VSC에서 표시되는 경고창은 dotnet sdk를 설치하라고 할 텐데, 아직 설치하지 않았다면 먼저 설치부터 해야 한다.
설치 이후 재시동했을 때 문제가 해결된다면야 행운이겠지만, 경험상 100% 해결되지 않았다.
이유는 dotnet의 PATH 설정을 따로 해줘야 하기 때문이다.
먼저 터미널을 실행한 뒤, 아래 명령어를 입력한다.
cd ~
vi .bash_profile
홈 디렉터리로 이동한 뒤, .bash_profile 이라는 이름의 환경 변수 설정 파일을 생성하는 명령어이다.
만약 .bash_profile 이름의 파일이 이미 존재한다면, 파일이 새로 생성되지 않고, 해당 파일을 vi 에디터가 열어줄 것이다.
vi 에디터가 열리면 i를 클릭해 INSERT 모드에 진입한 뒤, 아래 내용을 기입한다.
export PATH=$PATH:~/usr/local/share/dotnet
기입이 끝났으면, ESC를 클릭해 INSERT 모드에서 퇴장한 뒤, :wq를 입력 후 ENTER, 저장 후 vi 에디터를 종료한다.
이제 터미널 창에서 아래 명령어를 기입한다.
(자세한 건 잘 모르지만...) .bash_profile의 변경 내용을 적용해주는 명령어라고 한다.
source ~/.bash_profile
제대로 작업이 완료되었는지 확인해보기 위해 터미널 창에 아래 명령어를 기입한다.
export
이제 터미널 창에 현재 적용된 환경 변수의 리스트가 출력될 것이다. PATH="~~~"로 시작해서 맨 끝에 /dotnet으로 끝나는 문장이 있다면 성공이다.
VSC를 재시동한다.
아마 보기 싫었던 빨간 경고창은 사라졌을 것이다.
3. Some projects have trouble loading. 에러
출처
이번 에러는 다행히(?) 스크린 샷도 찾았다.
위 출처 링크 중 1번째, 스택 오버플로우 글에서 발견한 사진이다.
아마 대부분 파트 2의 첫 번째 관문을 통과하자마자 반겨줄 짜증 나는 에러일 것이다.
먼저 Unity 에디터를 실행한 뒤, Preferences > External Tools > External Script Editor로 이동해 VSC가 스크립트 에디터로 설정되어 있는지 확인부터 하자.
확인/설정이 끝났다면, 이제 mono가 설치되어 있는지 확인하자.
mono 설치는 이 링크를 타고 가면 할 수 있다.
모두 준비가 되었다면, 이제 VSC를 실행한다.
File > Preferences > Settings로 이동한다.
Search Settings 검색창에서 omnisharp.path를 검색해서 Edit in settings.json을 클릭한다.
등장한 json 코드 편집기 창에 아래 코드를 추가한다.
"omnisharp.path": "latest"
저장 후 VSC를 재시동한다.
뭐, 문제가 해결되었다면야 다행이지만 애석하게도 대부분 아직 경고창이 그대로일 것이다.
계속 진행하자.
파트 2에서 했던 것처럼 mono 프레임워크의 환경 변수를 .bash_profile 안에 추가해주어야 한다.
다시 터미널 창을 열고, 아래 명령어를 실행한다.
cd ~
vi .bash_profile
아까 봤던 익숙한 내용이 보일 것이다.
i 버튼을 눌러 INSERT 모드에 진입, 맨 아래 줄에 아래 코드를 입력한다.
export PATH=$PATH:/Library/Frameworks/Mono.framework/Versions/Current/bin/
코드를 보면 알겠지만, mono를 먼저 설치해야 저 경로가 존재하는 것이다.
mono 설치를 건너뛰었거나, 자신의 매킨토시에 mono가 설치되어 있는지 기억이 애매하다면, 일단 Finder를 켜자.
shift + command + g 단축키를 누른다.
표시되는 경로 입력 창에 아래 경로를 입력해보자.
/Library/Frameworks/Mono.framework/Versions/Current/bin/
만약 경로가 표시된다면, mono가 설치되어 있는 것이다.
다시 본론으로 돌아와서, 코드 기입이 끝났으면 아까처럼 ESC를 누르고, :wq로 변경 사항을 저장 후 vi 에디터를 종료하자.
이후 절차도 파트 2와 동일하다.
source 명령어 실행 후, export 명령어로 환경변수 적용이 제대로 되었는지 확인한다.
이제 VSC를 실행해보자.
에러가 아직도 발생한다면, 계속 진행한다.
앞서 json을 수정했던 것처럼, File > Preferences > Settings로 이동한다.
omnisharp를 검색한다.
스크롤을 쭉 내려서 Omnisharp: Use Global Mono를 찾는다.
드롭 다운 메뉴를 클릭해서 설정 값을 always로 바꾼다.
VSC를 재시동한다.
4. 제대로 설정이 끝난 것인지는 어떻게 확인하나?
위 절차를 모두 수행했고, 에러가 모두 사라졌다면 이제 준비는 얼추 끝난 것이다.
이제 문제는 어떻게 준비가 끝난 것인지 알아보냐는 것일 뿐...
가장 확실한 것은 Unity 에디터로 프로젝트 하나를 연 다음, 아무 스크립트 파일 1개를 열어보는 것이다.
그러면 애플 실리콘 네이티브 구동이라는 기가 막힌 최적화 덕분에 기가 막힌 속도로 기가 막힌 우리의 코드가 기가 막힌 스파게티 포스를 자랑하며 기가 막힌 VSC 창 1개를 기가 막히게 띄워줄 것이다.
그럼 이제 기가 막힌 손놀림으로 EXPLORER를 클릭해보자.
Unity 프로젝트가 제대로 연결되어 표시된다면 안심해도 좋다.
혹시 모르니 VSC의 기가 막힌 인텔리센스 성능도 테스트해볼 겸, if(Input.GetKey(KeyCode.A)){} 라든가, GameObject라든가, OnTriggerEnter라든가 유니티 라이브러리에 들어 있는 클래스나 메서드들을 이것저것 입력해보자.
기가 막힌 인텔리센스가 기가 막힌 우리의 타이핑을 기가 막히게 따라와 준다면, 진짜 끝난 거다.
이제 안심하고 기가 막힌 코딩을 시작하자.
'Dev. Study Note > Unity' 카테고리의 다른 글
Time.deltaTime 이해하기 (0) | 2022.08.28 |
---|---|
Unity에서 사용되는 Animation Type 속성 (0) | 2022.08.28 |
UI 작업 중, 청색 원형 피벗(pivot) 아이콘 클릭이 안될 때 (0) | 2021.12.31 |
오디오 볼륨 조절 슬라이드 바 만들기 (0) | 2021.11.15 |
NavMeshAgent를 사용한 적 AI가 이동할 때 떨리는 증상 발생 시 (0) | 2021.11.14 |