유니티 아바타 복사 - yuniti abata bogsa

서론 조금 길다. 

오늘 하루종일 VRC 아바타 업로드 해보려고 "개지랄" 진짜 내가 이런 나쁜 표현 블로그에는 거의 안 쓰는데, 진짜 "개지랄"하다가 겨우 끝내고 작성하는 글이다. 이 놈의 오류는 정말 더럽게 많고 안 되는 건 왜 안 되는지를 하나도 모르겠고 그런데 어떤 키워드로 검색해야 답을 찾을 수 있는지 알 수가 없고, 막무가내로 검색하니 실마리를 찾아도 한 방에 해결되는 경우가 거의 없다. 시행착오를 정말 많이 겪어야만 한다. 나는 진짜 오늘 하루종일 진짜로 과장 안 보태고 하루종일 욕 하면서 설정했다. 

내가 10번 넘게 실패하면서 반복작업을 엄청나게 하니까 이제 '이게 어려운 건 아니구나' 싶은데, 진짜 내가 아는 게 없는 상태에서 이걸 설정하려니 진짜 지옥 그 자체였고 안 되는 걸 붙잡고 스트레스 받고 있으니 사람 자체가 예민해져서 주변 사람에게 틱틱거리게 되더라. 오류 하나 해결하면 끝! 이게 아니고 하나 해결하면 또 오류 하나 해결하면 또 오류 하나 해결하면 또 오류라 이번엔 재설치 후 해결인 줄 알았더니 또 오류라 처음부터 다시 또 설정하고 다시 처음부터 다시 처음처음부터 다시 처음부터 다시 처음처음 다시 처음부터 다시 처음처음부터 다시 처음부터 내 인생을 내게 돌려줘!!

패닉 - 다시 처음부터 다시
유니티 아바타 복사 - yuniti abata bogsa

한국어 가이드가 없진 않은데 한국어 가이드를 완벽하게 따라해도 에러가 발생하기 때문에, 그래서 엄청 스트레스를 많이 받는다. 가이드 따로 에러 따로라 가이드 따라했는데 안 되서 에러 해결 방법 찾아 다시 설정하고 또 안 되길래 확인해보니 다른 문제가 있어서 또 다시 시도하는 등 이렇게 해야해서 스트레스를 많이 받는다. 그리고 에러 해결 방안을 검색할 때 코딩 영어 문자열스러운 내용으로 검색해야 해서, 뿐만 아니라 VRC가 한국에서 대중적인 컨텐츠도 아니어서 자료의 양도 빈약해 진짜 쌩초짜가 따라하기엔 벅찰 수 있다. 

나는 진짜 힘들었다. 여러분이 따라하다가 잘 되지 않아도 여러분의 탓은 아니니 "영어 읽을 줄 모르냐 에러코드 안 읽고 뭐하냐?" 하는 말에 너무 기죽지 않길 바란다. 그리고 고생고생해서 예쁜 아바타로 돌아다니면 그래도 괜찮긴 하네 하는 마음을 느낄 수 있다. 나도 진짜 개쌍욕하면서 겨우겨우 끝내고 들어가서 재밌게 논 뒤에 나와서 쓰는 글이니까. 

그런데 도저히 다음에 또 할 수 있을지 내가 과연 지금 같은 고생을 할 수 있을지 의문이라 진짜 완벽하게 정리를 한 번 해두려고 한다. 내가 저번에 이지트랜스 설치로 고생하고 이지트랜스 깔끔하게 정리해서 올렸던 거처럼, VRC도 한 번 정리를 해보려고 한다. 정말로 완벽하진 않겠지만 사혼의 구슬 조각처럼 퍼져있는 오류 해결 방안 찾는 거보단 낫겠지. 

서론이 진짜 너무 길었는데, 본론으로. 

(참고로 아래 설명도 엄청 길 예정이다. 이렇게 하면 된다고 순서만 틱틱 설명하는 게 아니라 진짜 오류 대응할 수 있게 하나하나 다 설명할 거기 때문에 여러분이 만약 잘 하는 사람이고 오류 없을 거라 생각하고 설치할 거라면, 딱히 주의하지 않고 대충 설치하고 싶다면 이 글을 보면 안 된다. 이 글은 뭔가 오류가 있고 해결을 못 하겠는 사람이 봐야하는 글이다)

VRChat 아바타 업로드 조건

유니티 아바타 복사 - yuniti abata bogsa
한국어 튜토리얼 맵에서 볼 수 있는 VRC 등급 설명

아바타 업로드는 "New User" 등급 이상부터 가능하다.

나는 몇 시간 VRC를 해본 뒤 업로드를 하는 거였어서, 당연히 내가 Visitor 등급은 아닐 줄 알았다.

유니티 아바타 복사 - yuniti abata bogsa
VRC 등급 보는 방법

오류 잔뜩 고친 뒤 겨우 빌드하려는데 자꾸 영어 알림창 뜨길래 빌드 됐다는 건 줄 알고 안 읽고 껐는데 자꾸 안 되어 있길래 확인해보니 '너 뉴비라 못 올려' 라는 내용이더라. 혹여나 나처럼 자신의 등급도 모르고 빌드 시도하는 사람이 있을까봐 미리 알려준다. 

친구가 많고 월드를 많이 돌아다니고 활성 상태로 플레이 한 시간이 많으면 올라간다. Visitor에서 New User로 도달하는 데 걸리는 시간은 약 40시간 정도인 듯 보인다. 다만 내 주변 지인의 말을 들어보면 '플탐이 많은 유저와 친구를 하면' 적은 시간으로도 쉽게 등급업이 가능하다고 한다. 나도 1천 시간 넘는 지인과 친구를 하고 2시간 정도 돌아다녔더니 New User 등급으로 올라갔다. 

자신의 등급은, 메뉴를 열면 나오는 좌측 상단의 프로필을 눌러 확인할 수 있다. 

유니티 아바타 복사 - yuniti abata bogsa
VRC 등급 보는 방법

만약 도저히 40시간 못 하겠다 싶으면 VRC+ 를 구매하면 된다.

아까 첨부한 이미지엔 VRC+ 라는 메뉴가 없어 어디서 하는지 모를 수 있는데, 저기서 Avatars, Worlds 등 무언가를 누르면 이 메뉴가 아니라 조금 더 디테일한 메뉴창으로 바뀐다. 그 메뉴창의 좌측 상단 끝에 있다.

유니티 아바타 복사 - yuniti abata bogsa
VRC+ 보는 방법

다만 최근 환율이 비싸서 9.99달러인데도 1만3천원 넘는 가격으로 책정되어 생각보다 정말 비싸다. 나도 주변에서 VRC+ 하라고 말을 많이 했는데 도저히 손해보는 기분이라 못 하겠어서 안 했다.  

유니티 설치 방법

VRC에 아바타를 업로드 하려면 당연히 유니티부터 설치해야 한다.

유니티는 유니티 홈페이지 (주소: https://unity.com/kr) 에서 다운로드 받을 수 있다. 윈도우용으로 받으면 되는데, 홈페이지 상단의 '개발자 툴'에서 'UNITY 다운로드'로 들어가면 다운로드 받을 수 있다. 

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 유니티 허브 설치 방법
유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 유니티 허브 설치 방법

우리가 설치하는 건 WINDOWS용 다운로드니까 이걸 받으면 된다. 

단, 참고해야 할 사항이 있다.

설치하는 건 어렵지 않다. 유니티 허브를 설치하고 유니티 허브에서 2019 버전 에디터만 설치하면 된다. 다만 이렇게 설치할 경우 우리는 2019 버전의 가장 최신 버전을 설치하게 된다. 글을 작성 중인 2022년 7월 20일 기준, 2019.4.40f1 라는 버전으로 설치된다. 

모든 이가 이러한 에러를 맞이하지는 않겠지만, 나는 모든 가이드를 완벽하게 이행하여 VRC에 아바타 업로드를 성공했을 때, VRC 홈페이지에선 아바타를 찾을 수 있으나 VRC에서 아바타를 찾을 수 없는 에러가 발생했다. 여러분 중, 내가 똑바로 했고 VRC 홈페이지에 분명 캐릭터가 있다고 표시되는데도 VRC 인게임 내에서 아바타를 찾을 수 없다면 이 버전 문제일 수 있다.

2019.4.36f1 버전 때도 언급됐던 걸로 보이고, 2019.4.40f1 버전인 지금도 발생하는 문제다. 내 생각에 이는 VRC 뿐만 아니라 여러 게임에서 게임은 가장 최신 버전으로 유지되고 게임과 관련된 플러그인은 항상 게임보다 2-3달 늦게 적용되는 그러한 이슈로 보인다(내 추측일 뿐이지만).

어쨌든, 여러분이 시도해보면 알겠지만 최신 버전으로 될 수도 있고 안 될 수도 있다. 

2019.4.36f1 때 2019.4.31f1을 쓰라는 조언을 볼 수 있었을 뿐이라 지금은 어느 버전을 사용해야 하는지 그거까진 모르겠다. 다만 자신이 이러한 오류없이 설치하고 싶다면, 2019.4.31f1 버전으로 설치하는 게 가장 '안전'해보인다.

(내가 이 버전은 된다는 걸 확인했으니까 안전하다는 뜻이다. 당연히 다른 버전도 될 수 있다. 단지 그걸 제대로 된다고 확인해준 사람이 없을 뿐이다. 그리고 그게 아바타 때문에 안 되는 건지 버전 때문인지 원인조차 제대로 모르기 때문에 확실하게 말할 수가 없다. 만약 자신은 꼭 최신버전으로 하겠다 나는 문제없겠지 라고 생각한다면 최신 버전으로 해보고 안 될 때 버전을 낮춰서 하셔도 상관은 없다)

그렇기 때문에, 유니티 허브는 평범하게 설치하되 에디터를 유니티 허브에서 설치하지 말고 조금 구버전인 에디터를 다운받아 설치하는 걸 추천한다. 유니티 허브에서 보여주는 에디터를 설치하면 가장 최신 버전으로 설치가 되어버리니까.

유니티 허브는 아까 말한대로 유니티 홈페이지에서 "윈도우용 다운로드"를 누르면 된다.

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 유니티 허브 설치 방법

유니티 허브 설치 파일을 다운로드 할 수 있고, 설치 파일을 실행하면 유니티 허브를 설치할 수 있다. 이런저런 안내가 나오겠지만 주의깊게 읽어야 할 사항은 없는 걸로 보이며 '경로를 따로 설정하지 않고 있는 그대로' 설치하는 걸 추천한다. (설치 기본 경로는 C:\Program Files\Unity\Hub\Editor 이걸로 알고 있고, 다운로드 기본 경로는 나도 기억이 안 난다. 건드리지 말자)

이를 추천하는 이유는 여러분이 또 될지 안 될지 내가 알 수는 없지만, 나는 경로를 다르게 설정해서 애를 먹었기 때문이다. 유니티에서 특수 문자가 들어간 파일 경로를 인식을 못 하는 거 같아서 여타 외국 프로그램이 그렇듯 경로를 명확하고 단순하게 해줘야 하나 싶어 영어로만 해주려고 C 드라이브 바로 아래에 유니티 폴더를 만들어서 설치를 했더니 나중에 '내가 설정하지 않은 기본 경로'에서 파일을 찾으면서 자꾸만 파일이 없다는 에러를 내게 보여주더라. 결국 다 지우고 다시 기본 경로로 설치했다. 그러니 경로 건드리지 말고 있는 그대로 추천 경로로 설치하는 걸 추천한다(다만 사용자 이름이 '한글'이라 설치 경로에 한글이 들어가는 경우엔 어떻게 해야할지 그건 나도 모르겠다. 개인적으로 한글 경로는 이런 외국 프로그램에 좋지 않다는 편견이 있어서).

유니티 허브를 설치했다면 라이센스를 등록해줘야 한다.

유니티는 유료 프로그램인데, 개인은 자유롭게 사용할 수 있다. 우리는 개인이기 때문에 개인 라이센스를 받아 등록만 해주면 된다. 당연히 유니티 회원가입도 해줘야 한다(가입하는 건 평범하게 하면 되니까 그거까지 알려주진 않겠다). 

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 유니티 라이선스 (라이센스) 등록 방법
유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 유니티 라이선스 (라이센스) 등록 방법
유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 유니티 라이선스 (라이센스) 등록 방법

라이선스를 받았으면 이제 아까 말한 대로 이전 버전의 에디터를 직접 다운받아야 한다. 

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 유니티 에디터 설치 방법

여기서 버전을 선택해 에디터를 설치할 수 있다.

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 유니티 에디터 설치 방법

여기서 2019.4.31f1 버전을 받으면 된다. 유니티 허브 다운로드 버튼을 누르면 유니티 허브로 설치도 되는 거 같은데, "나는 안 되길래" 이걸로 하라고 알려주는 거다. 나는 아무리 버튼을 눌러도 제대로 설치가 안 되서 위의 이미지처럼 에디터를 직접 골라서 설치했다.

다운로드 받은 EXE 파일을 실행해서 그대로 설치하면 된다.

여기까지 설치했으면 드디어 유니티 에디터 설치가 끝났다.

자세히 안 알려주면 세 줄 이내로도 끝낼 내용이지만, 글 초반에 말했듯이 여러분이 어떤 에러를 어떻게 마주할지 알 수 없기 때문에 내 경험상 문제가 가장 없었던 방법을 이유를 들어가면서 알려주고 있으니까. 

여기서 잠깐. "2021 버전은 쓰지 않나요?" 라거나, 혹은 "저는 님의 글 작성 시점에서 3년 지난 후 글을 읽고 있는데 아직도 2019 버전을 사용해야 하나요?" 등의 궁금증이 있는 사람이 있을 수 있다. 실제 내가 예전에 한 번 해보려고 시도했을 때는 2018년인가 2017년인가 뭐였는지 기억이 안 나는데 그 때 그런 걸 쓰래서 (그 때는 결국 '뉴비학살기 유니티' 당했다) 떠올린 의문이기도 하다.

지금은 2019 버전을 사용하라고 말하지만, 예전에는 아바타 2.0 이야기가 더 많았다. 시간이 많이 지난 지금조차 검색해보면 현 버전보다 더 이전 버전 기준으로 쓰여진 글이 더 많다.

시대가 바뀐다는 얘기다.

여러분이 만약 이 글을 3년이 지난 뒤 읽고 있다면 2019 버전을 설치해야 할 상황이 아닐 수도 있다. 2021 버전이 여러분에게 가장 낮은 버전이 되어있을 수도 있다. 여러분이 설치해야 할 버전은 현재 유니티 허브에서 다운로드 할 수 있는 가장 구버전이 2019 버전인 거처럼, 그 때는 유니티 허브에서 다운받을 수 있는 가장 구버전이 2021 버전일 수도 있다는 걸 생각해주길 바란다. 

유니티는 최신 버전을 자꾸만 내어놓지만, VRC는 우리나라 정부가 아직도 XP나 윈도우7을 사용하려고 하듯이 버전을 잘 따라가지 않는 듯 보인다. 특히 이미 만들어진 아바타 등은 다 구버전 기준이라 결국 여러분이 사용해야 할 버전도 그 시기의 가장 구버전일 확률이 높다. 지금은 2019 버전이 구버전일 뿐이고. 

프로젝트 생성

유니티 허브도 설치했고, 유니티 에디터도 설치했고, 라이센스도 받았으면 이제 프로젝트를 생성할 수 있다. 

프로젝트마다 SDK 설정 다시 해줘야하니까, 그리고 어차피 프로젝트 새로 생성 할 일 없으니까 프로젝트명 쓰고 싶은 걸로 쓰는 걸 추천한다. 계속 쓸 설정인데 굳이 가이드 따라한답시고 "TEST" 같은 식으로 이름 지을 필요 없다. 나중에 프로젝트 또 만들어서 또 설정할 거 아니니까. 

그리고 프로젝트 경로는 이왕이면 단순하게 하는 걸 추천한다. 특수기호, 띄어쓰기 이런 거 넣지 말고, 영어로 단순하게 D 드라이브 바로 아래에 Unity 폴더 만들어서 사용하는 걸 추천한다. 어느 프로그램이든 '특수기호', '한글' 이런 거 들어가면 이상한 오류가 날 수도 있으니까 (편견) 이런 건 항상 가장 상위에 가장 쉽고 명확한 이름으로 만드는 게 좋다. 

나는 D 드라이브에 Unity 폴더를 만들고 프로젝트 명은 VRC라고 했다.
(여기 올리는 이미지는 내가 글 쓰려고 테스트용으로 다시 찍고 있는 거라 TEST다)

유니티 허브를 보면 좌측에 "프로젝트"가 있다.

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 유니티 프로젝트 생성 방법

프로젝트를 누르면 위 이미지처럼 (여러분은 프로젝트를 만들지 않았으니 프로젝트가 없을 거다) 나오는데, 여기서 우측 상단의 "새 프로젝트" 버튼을 누르고 아래 이미지 순서대로 선택하고 설정하면 된다. 

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 유니티 프로젝트 생성 방법

에디터 버전 2019.4.31f1 설정 -> 3D 선택 -> 프로젝트명, 프로젝트 경로 설정 후 프로젝트 생성

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 유니티 프로젝트 생성 방법

그렇게 프로젝트를 생성하고 실행하면 이와 같은 화면을 볼 수 있다.

우리가 여기서 해야 할 건 VRC 아바타를 업로드하기 위한 VRC SDK 설치다.

VRC SDK3 설치 및 설정 방법

VRC SDK는 VRC 홈페이지 (주소: https://vrchat.com/home/download) 에서 받을 수 있다. 

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 VRChat (VRC) SDK3 설치 및 설정 방법

홈페이지를 보면 좌측에 SDK3 - Worlds, 우측에 SDK3 - Avatars 가 있다. 우리는 당연히 아바타를 업로드 할 거기 떄문에 아바타를 설치하면 된다. 만약 여러분이 월드를 업로드 할 생각이면 이 글을 보면 안 된다. 이 글은 월드에 관한 설명이 전혀 없으며, 좌측의 SDK3 - Worlds 를 '절대' 다운받지 말라고 말할 생각이기 때문이다.

Worlds 굳이 쓰지도 않을 거 다운받아서 설정하지 마라. 

무턱대고 아무 말이나 하는 게 아니라, 내가 아무 생각도 없이 어차피 설치해야 하는 거면 둘 다 설치하면 되지 않나? 생각하고 뺑이를 세 번 정도 쳤다. 아래 설명할 SDK 오류와 관계가 있다. 

오류를 설명하기 전에 먼저 SDK3 설치하는 방법부터.

위 SDK3 파일을 받았으면 다운받은 폴더에 VRCSDK3 라는 이름으로 시작되는 .unitypackage 확장자 파일이 있을 거다. 이걸 더블클릭 하면 켜져있는 유니티 프로젝트에 "Import Unity Package" 라고 'Import' 할 수 있는 창이 하나 뜬다.

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 VRChat (VRC) SDK3 설치 및 설정 방법

여기서 "Import"만 누르면 SDK3 유니티패키지가 설치된다. 마치 파이썬이나 R 같은 코딩 프로그램에서 특정 기능을 사용할 수 있는 패키지를 받듯이 말이다. 어려울 게 하나도 없다. 여기까지는 말이다. 여기까진 초등학생도 솔직히 할 수 있다.

하지만 안타깝게도 설치한 뒤 우리는 "Console"을 봐야한다. 

만약 콘솔창이 여러분에게 보이지 않는다면 "Window - General - Console"로 불러내면 된다. 

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 VRChat (VRC) SDK3 설치 및 설정 방법

여기 보면 무슨 오류가 잔뜩 떠 있다.

혹여나 위 오류를 검색하는 사람이 있을 수 있으니, 이 글을 발견할 수 있게 여기에 오류 내용도 전부 하나하나 붙여넣어놓겠다. (대충 오류 내용 읽기 싫으면 스크롤 하라는 얘기)

Assembly 'Assets/VRCSDK/Plugins/VRC.SDK3.Dynamics.Contact.Editor.dll' will not be loaded due to errors:
Reference has errors 'VRC.Dynamics'.

Assembly 'Assets/VRCSDK/Plugins/VRC.SDK3.Dynamics.PhysBone.Editor.dll' will not be loaded due to errors:
Unable to resolve reference 'Unity.Mathematics'. Is the assembly missing or incompatible with the current platform?
Reference validation can be disabled in the Plugin Inspector.

Assembly 'Assets/VRCSDK/Dependencies/Managed/VRC.Collections.dll' will not be loaded due to errors:
Unable to resolve reference 'Unity.Burst'. Is the assembly missing or incompatible with the current platform?
Reference validation can be disabled in the Plugin Inspector.
Unable to resolve reference 'Unity.Mathematics'. Is the assembly missing or incompatible with the current platform?
Reference validation can be disabled in the Plugin Inspector.

Assembly 'Assets/VRCSDK/Plugins/VRC.Dynamics.dll' will not be loaded due to errors:
Unable to resolve reference 'Unity.Burst'. Is the assembly missing or incompatible with the current platform?
Reference validation can be disabled in the Plugin Inspector.
Unable to resolve reference 'Unity.Mathematics'. Is the assembly missing or incompatible with the current platform?
Reference validation can be disabled in the Plugin Inspector.

Assembly 'Assets/VRCSDK/Plugins/VRC.SDK3.Dynamics.Contact.dll' will not be loaded due to errors:
Reference has errors 'VRC.Dynamics'.

Assembly 'Assets/VRCSDK/Plugins/VRC.SDK3.Dynamics.PhysBone.dll' will not be loaded due to errors:
Unable to resolve reference 'Unity.Mathematics'. Is the assembly missing or incompatible with the current platform?
Reference validation can be disabled in the Plugin Inspector.

Assembly 'Library/ScriptAssemblies/Assembly-CSharp-Editor.dll' will not be loaded due to errors:
Reference has errors 'VRC.Dynamics'.

이걸 무시해도 되는지 아닌지는 나도 잘 모르겠다(수정 안 해도 아바타 업로드를 할 수 있는지 모르겠다는 얘기다. 나는 무작정 수정을 했으니 안 했을 때 안 되는지 되는지 모른다). 그런데 여러 사람이 말하길 이 오류가 없는 게 정상이라던데, 어쨌든 나는 그 말을 믿고 여기에 나온 오류를 해결하려고 했는데 내가 영어를 잘 못 해서 스트레스를 엄청 많이 받았다.

2022.08.04 추가 - 2019.4.31f1을 받았다면 이 부분을 무시해도 된다. 이 글 작성 후 며칠 동안 유니티만 하루종일 만지고 있었는데, 몇 개의 프로젝트를 더 생성하면서 이런저런 확인을 한 결과 2019.4.31f1 을 받으면 2019.4.31f1 기준으로는 Brust, Mathematics 기능을 업데이트 할 필요가 없다. (그 버전 기준으로는 가장 최신이기 때문에)

무슨 영어에 어셈블리가 어쩌고 나와있어서 아니 어셈블리어 말하는 건가? 다이나믹 어쩌고 나와있어서 다이나믹 본이 없어서 문제라는 건가? 싶어 헤맸기 때문에. 

다행히 영어 고수 개발자 분이 주변에 있어서 그 분이 도와주셨는데, 위 내용을 요약하면 "Brust"와 "Mathematics" 라는 문제라는 말이다. "Brust"와 "Mathematics"는 유니티 패키지인데, 이는 SDK3를 설치할 때 같이 설치되는 패키지로 알고 있다(나도 정확히 모른다). 하지만 버전 문제인지 이런 오류가 발생하는 걸로 보이고, 그렇기 때문에 Brust와 Mathematics를 업데이트 해줘야 한다.

그럴러면 아까 Console 창을 불러냈듯이, 이번에는 Package Manager(패키지 매니저)를 불러내야 한다.

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 유니티패키지 설치 및 에러 해결 방법

상단의 Window 메뉴를 누르면 바로 Package Manager란 글자가 보인다.

여기서 해당 패키지를 (설치가 되어 있지 않다면) 인스톨하고, (설치 되어 있다면) 업데이트 해주면 된다.

그런데 아까 말했다시피 SDK3 - Worlds를 설치해놨을 경우 업데이트가 안 되는 경우가 있기 때문에 (업데이트를 눌러도 다시 다운그레이드 된다) 내가 그래서 설치하지 말라고 했던 거다. 

이걸 안 해도 아바타를 업로드 할 수 있는지 내가 정확하게는 모르기 때문에 이 설정이 그렇게 중요한 건지는 나도 잘 모르겠지만, 어쨌든 고사지내는 거마냥 나는 프로젝트 설정할 때마다 이걸 설정한다. 

여기까지 준비가 됐다면 아바타를 불러와야 한다.

SDK3를 설치하는 방법과 똑같은 방법으로 불러올 수 있다. 우리가 구매한 아바타를 보면 아바타 3.0 이라는 이름의 유니티패키지가 있을 거고, 이를 더블클릭하고 정상적으로 불러온다면 아래 이미지에 표시한 1번처럼 확인할 수 있다. 만약 더블클릭을 해서 추가하려는데 추가가 안 된다면 컴퓨터 재부팅을 하고 다시 시도하길 바란다(그럴 때 있으니까).

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드 하는 방법

정상적으로 불러오기가 된다면 1번이라고 표시해둔 부분처럼 Assets 아래에 추가가 되어있을 거다.

위 이미지는 1번 폴더를 2번 위치로 옮겨야 한다는 듯 잘못 표시했는데, 저렇게 옮기는 게 아니라 1번의 아바타 폴더를 열어보면 보면 그 안에 Prefab이라는 폴더가 있을 거다.

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드 하는 방법

Prefab 폴더를 누르면 그 안에 캐릭터 이미지가 미리보기 되는 파일이 있다. (보통은 1개 있는데, 나는 조금 비싼 걸 사서 그런가 5개나 있더라. 기본, 여우형, 고양이형 등. 그 중에 자기가 원하는 거 하나만 위로 올리면 된다. 한 번에 다 올리는 게 아니다. 만약 5개면 5번 빌드해야 한다. 옷장하는 법이니 뭐니 그런 거도 있던데 그건 나중에 썩은물이 된 후에 해도 늦지 않다 지금은 업로드에만 집중하자)

그 캐릭터 파일을 윗윗 이미지의 2번 위치로 드래그해야(드래그해서 아바타를 위에 추가해야) 한다. 

그럼 아바타 파일이 2번 위치에 추가되면서 우측(Scene)에서 캐릭터를 볼 수 있게 된다.

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드 하는 방법

셰이더 설치 방법

아바타 넣었으니까 이제 아바타 업로드 할 수 있겠지! 하고 아바타를 프로젝트에 삽입하면 아마 분홍 아바타가 여러분을 기다리고 있을 수 있다. 기다릴 수도 있고 안 기다릴 수도 있는데 여러분이 이 글을 그대로 따라하고 있는 상태에서 그대로 아바타를 올렸다면 분홍색 아바타가 여러분을 기다리고 있을 수 있다.

나는 (아까 이미지에서 봤겠지만) 기다렸거든. 분홍색 아바타가.

아이시발 예시 찍어서 보여주려는데 패키지 안 열리네. 이런 상황이 있을 수 있다 지금 글을 쓰고 있는 나처럼. 이럴 때는 컴퓨터를 재부팅해주면 된다. 나도 원인을 모르겠는데 작업 하다보면 패키지가 설치 되어야 하는데 안 될 때가 있다. 이럴 때는 컴퓨터 재부팅하면 잘 된다. 

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 셰이더 설치 방법

짜잔. 봐라 재부팅 하니까 잘 된다.

여러분은 이 새끼 왜 혼자 북 치고 장구 치고 다 하고 있지 싶겠지만, 아니 진짜로 예시를 보여주려는데 안 됐다. 그런데 정말로 재부팅을 하고 글을 이어서 쓰니까 되고 있다고. 여러분도 아무 이유없이 안 되면 한 번 재부팅 하면 된다는 걸 명심하자.

어쨌든 이렇게 돈 주고 산 아바타가 분홍색으로 나오는 이유는 아바타 제작자가 사용한 셰이더(쉐이더?)가 내 유니티에는 설치되지 않았기 때문이다. 여기서 어떤 셰이더를 사용해야 하는지는 나도 모른다. 여러분이 구매한 아바타의 제작자가 판매 글에서 어느 셰이더를 사용했다고 설명을 해놨을 거다.

유니티 아바타 복사 - yuniti abata bogsa

나는 UTS2 라는 셰이더를 사용한 아바타였다.

아바타 제작자가 패키지를 같이 동봉해주는 경우도 있고, 나처럼 동봉 안 해주는 경우도 있다. 어쨌든 일어를 제대로 못 해서 이런 걸 놓치면 혼자 뺑이를 치게 되어있다는 걸 명심하자! 만약 나처럼 UTS2를 사용해야 한다면, UTS2 라고 검색하면 된다. "UnityChanToonShader2"가 UTS2다. 깃헙 주소로 되어있을 텐데 여기서 받으면 된다. 

여기서 깃헙 사용 방법을 안 알려주면 개발 잘 모르고 컴퓨터를 잘 모르는데 VRC는 하고 싶은 사람이 힘들 수 있을 테니, 굳이 설명해주자면,

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 셰이더 설치 방법 (UTS2)

초록색 Code 버튼을 누른 뒤 Download ZIP을 눌러 파일을 받으면 된다. 여기 나와있는 파일을 한 번에 받을 수 있는데 압축을 풀면 "UnityChanToonShader"라는 이름의 유니티패키지 파일이 있으니 그걸 더블클릭해서 설치하면 된다. 

그럼 분홍색 아바타였던 게 이제는 제대로 보이게 된다. (아래의 prefab에선 여전히 분홍색으로 보일 수 있는데, Scene에서만 제대로 보이면 된다. 나중에 갑자기 prefab 폴더에서도 멀쩡히 보이기 때문에 크게 신경쓰지 않아도 된다.)

여기까지 완료됐으면 VRChat SDK를 통해 업로드를 할 수 있긴 하다. 다만, 안 될 거다. 또 오류가 기다릴 거다. 설명을 하려면 오류가 뜨는 걸 먼저 보여줘야하니 먼저 VRChat SDK를 사용하는 방법부터. 

VRChat SDK3를 통한 아바타 업로드 방법

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) SDK3를 통한 아바타 업로드 방법

지금 쓰는 이 부분은 아직 따라하지 말고 보기만 하자. 오류 설명하려고 미리 하는 걸 설명하는 거라 따라하면 아마 오류가 뜰 거기 때문에, 설명만 일단 듣고 뒤에서 읽을 거 읽은 다음 다시 돌아와서 여기서 따라하면 된다. 

(1) 상단의 VRChat SDK - Show Control Panel 을 누르면 VRChat SDK 창이 나온다.

(2) 여기서 VRC 계정을 로그인을 한 뒤 Builder 에서 빨간색 팔각형이 없다면
(빨간색 팔각형이 있다면 Auto Fix를 눌러주자)

(3) 맨 아래의 "Build & Publish for Windows" 버튼을 누를 수 있는데, 약간의 로딩 후 '캐릭터가 보이던 창(Scene)'이 Game창으로 전환되면서 무언가를 입력할 수 있게 된다.

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) SDK3를 통한 아바타 업로드 방법

여기서 아바타 이름과 아바타 설정을 한 뒤 약관에 동의하고 업로드 할 수 있다. 여기서 설정하고 업로드 버튼을 누르면 완료가 됐다는 창과 함께 모든 설정은 끝난다. (VRC에서 아바타를 확인할 수 있게 된다)

하지만 오류가 있다면, "Build & Publish for Windows"를 눌러도 아무 반응이 일어나지 않는다. 저렇게 입력할 수 있는 창이 뜨지 않는다.

아예 붉은색 팔각형 느낌표가 뜬다면 Auto Fix라도 눌러볼 수 있고, 아예 잘못된 파일이라면 빌드 버튼인 "Build & Publish for Windows" 버튼 자체가 활성화되지 않는데, 이 버튼이 활성화됐지만 아무 반응이 일어나지 않을 거다. 아마도 여러분은 무언가의 오류를 만날 확률이 높다. 이는 다이나믹본과 관련됐을 확률이 높다. 

만약 아무 반응도 없다면 콘솔을 한 번 보자.

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) SDK3를 통한 아바타 업로드 에러 해결 방법 (다이나믹본 에러)

이 아름다운 에러를 봐라.

어차피 다 똑같은 에러라 하나만 가져와보겠다.

You are trying to replace or create a Prefab from the instance 'Hair14' that references a missing script. This is not allowed. Please change the script or remove it from the GameObject.

뭔가 들어있는데 뭔가 어쨌든 너는 할 수 없다는 그런 의미다. 문제되는 뭔가를 지우라는 얘기다. 그런데 제작자가 못 쓰는 걸 넣었을까? 그렇지 않다. 제작자가 만든 무언가를 우리가 사용할 도구를 가지고 있지 않기 때문에 발생하는 에러다.

그게 다이나믹본이다. 

내가 구매한 아바타는 2022년 봄에 "피직스본 대응 중" 이라는 말을 남기긴 했으나 2022년 7월 여전히 다이나믹본 기준이었고, 그렇기 때문에 다이나믹본이 없는 내가 이 아바타를 업로드하기 위해서는 다이나믹본과 관련된 스크립트를 다 지워줄 필요가 있었다. 당연히 이걸 다 지우면 사용할 수 있는 걸 사용하지 않게 바꿔야만 하기 때문에 캐릭터의 (대체적으로 무언가 만지고 당기고 하는 그런 요소가 없어져서) 퀄리티가 떨어질 수 있다. 

다이나믹본 설치 방법 (구매 안 할 사람은 아래 목차로)

다이나믹본 설치 방법은 간단하다.

유니티 홈페이지 로그인하고 (로그인하기 귀찮다면 유니티 에디터에서도 불러올 수 있다. 캐릭터 보는 창 위에 보면 Scene, Game, Asset Store로 나뉘어져 있는데 여기서 Asset Store를 누르면 유니티 스토어가 나온다. 홈페이지를 그대로 보여주는 거 뿐이니 크롬에서 직접 해도 상관없다) 에셋스토어에서 앱 구매하듯이 구매하면 된다.

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 다이나믹본 구매 및 설치 방법

(에셋스토어 다이나믹본 주소: https://assetstore.unity.com/packages/tools/animation/dynamic-bone-16743?locale=ko-KR)

이거까지 설명해줄 필요는 없다 생각한다. 여러분은 지금 이미 부스에서 아바타를 구매했으며 해외 결제를 할 줄 아는 사람이며 이 정도는 도움없이도 구매할 수 있는 사람들이다. 

다만, 구매한 뒤 적용할 때는 약간 당혹스럽고 잘 모를 수 있다.

어려운 건 아니지만, 그래도 혹시나 헷갈릴 수 있으니 설명하자면, 아까 불러놨던 패키지 매니저를 보면 좌측 상단에 "Unity Registry"라고 적혀있을 거다. 이를 클릭하면 몇 가지 메뉴가 나오는데, "My Asset"을 선택하면 된다. 

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 다이나믹본 구매 및 설치 방법

우리가 구매한 걸 한 번에 모아볼 수 있다. 당연히 우리는 다이나믹본 밖에 없으니 다이나믹본 하나만 보일 거고, 다이나믹본을 클릭하면 옆에 "Download" 버튼과 그 옆에 "Import" 버튼이 있다.

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드를 위한 다이나믹본 구매 및 설치 방법

다운로드 후 Import를 하면 아까 우리가 패키지를 설치했듯이 바로 설치된다. 

다이나믹본이 설치됐다면 아바타 업로드를 오류없이 성공적으로 끝낼 확률이 높다. (다른 오류가 없다면 말이다. 그리고 일반적으로 여러분이 이 과정을 하나도 틀리지 않고 그대로 성공적으로 따라했다면 이 오류가 마지막 오류로 업로드 완료가 될 거다 아마도) 

이제 'VRChat SDK를 통한 아바타 업로드 방법'로 가서 방법을 따라하면 된다.

다이나믹본이 없는 경우 VRChat SDK 빌드 오류 해결 방법

방금 말했듯이 다이나믹본을 설치한다면 별도의 오류가 발생하지 않고 업로드를 할 수 있다. 

하지만 '요즘 피직스본 때문에 다이나믹본 안 산다 굳이 다이나믹본 살 필요 없다' 같은 말을 듣고 나처럼 다이나믹본을 사지 않았다면? (참고로 하루 VRC 해보고 이런저런 부분이 아쉬워서 결국 다이나믹본 샀다. 이럴 거면 시발 처음부터 살 걸 하는 생각이 들더라. 3만원도 안 하는 거. 피직스본 대응이고 지랄나발이고 아직까지는 다이나믹본으로 된 아바타 많으니까 돈 버린다 생각하고 사서 쓰는 걸 추천한다. 만약 피직스본 지원 안 하는 아바타면 어쩔 건데? 또 여기 아래에 기입될 뻘지꺼리 하면서 아바타 퀄리티 떨어뜨리고 있을 거야? 걍 사자 치킨 한 마리 값이다. 다이나믹본 바이럴 아니다) 

사지 않았다면, 안타깝게도 업로드 할 아바타를 수정하는 작업을 거쳐야만 한다. 그렇게 어렵지는 않은데, 유니티를 모르는 나 같은 초짜 입장에선 하늘이 무너지고 사회가 무너지는 기분이더라. 그래도 해보니까 그렇게 어렵지는 않던데 그래도 짜증은 많이 나더라. 

아까 에러 내용을 보면 Hair14 가 문제라고 그랬다. 아마 Hair14 뿐만 아니라 잔뜩 있고 그거 다 해결해야겠지만, 예를 들자면 말이다. 어쨌든 Hair14 라는 게 문제가 됐다. 그럼 Hair14를 사용하지 않게 만들어야 한다.

좌측 아바타 파일을 눌러보자. 그럼 뭔가 잔뜩 열릴 거다. 거기서 Hair14가 어딨는지 찾아야 한다.

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드 시 다이나믹본 에러 해결 방법

Hair14를 찾았다면, 클릭을 해보자. 클릭을 하면 위 이미지의 우측화면 같은 걸 볼 수 있다. 우측에 보면 (Script) 라고 적힌 부분이 있는데, 스크립트 라고 적힌 부분의 오른쪽에 점 3개가 있다. 이걸 누르면 아래와 같은 선택지가 표시된다.

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 업로드 시 다이나믹본 에러 해결 방법

여기서 "Remove Componenet" 로 스크립트를 제거할 수 있다. 안 된다고 표시하는 모든 걸 찾아서 다 없애면 그 때 업로드를 할 수 있다. 잘 모르면 찾는데 한 30분 정도 걸릴 수 있는데, 나처럼 10번 삽질하고 같은 행동 7번 넘게 하면 수정해야 하는 거 40개 가량 떠도 약 10분이면 다 할 수 있게 된다. 그렇게 어려운 건 아니다 귀찮아서 그렇지. 

이러기 싫으면 그냥 다이나믹본 사면 된다. 

다 지웠으면 이제 'VRChat SDK를 통한 아바타 업로드 방법'로 가서 방법을 따라하면 된다. 만약 덜 지웠으면 또 콘솔창에 오류가 뜰 거다. 콘솔창 오류가 새로 나온 건지 아닌 건지 헷갈리면 Clear 한 번 눌러서 다 지운 뒤 다시 시도하면 된다. 

여기까지 했으면 업로드가 끝났겠지만, 이왕 하는 거 조금만 더 해보자.

VRChat 아바타 머리 크기 줄이는 방법

VRChat을 PC로 하면 머리 크기가 커도 이상하다는 느낌이 없다. 그런데 VR로 머리를 보면 엄청 크다는 느낌이 많이 들더라. 어떤 아바타를 사용하냐에 따라 다르겠지만, 나는 개씹덕아바타라 (그래서 여러분에게 자꾸만 캐릭터 이미지를 가렸던 거다) 대가리가 진짜 너무 컸다. 게임에서 보면 엄청 부담스럽다.

줄이는 방법 생각보다 어렵지 않다. 

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 머리 크기 줄이는 방법

다이나믹본 요소를 일일이 지우신 분은 익숙한 이미지일 거고, 다이나믹본을 사신 분은 익숙하지 않은 화면일 거다. 캐릭터 파일을 눌렀을 때 (좌측) 화면처럼 구성 요소를 하나하나 다 볼 수 있다. 그리고 Neck, Head 요소도 볼 수 있다. 이를 눌러보면 (우측) 화면처럼 설정할 수 있는 뭔가가 나올 거다.

저기서 Scale 스케일을 조정하면 크기를 줄일 수 있다.

머리 줄이는 방법을 검색하는데 어떤 커뮤니티 사이트의 현자가 Neck 0.92, Head 0.95가 좋다길래 나도 0.92, 0.95로 해서 올려보니까 딱 적당하더라. 댕큐합니다. 

여기까지 알려줬으면, 하나를 알려주면 열을 안다고 '그럼 캐릭터 전체 크기를 줄이면 캐릭터를 작게 만들 수 있겠네?' 싶겠지만, 이는 약간 문제가 있다. 캐릭터 크기는 작아지는데 트래커 등의 위치는 여전히 똑같아서 손을 항상 하늘로 보는 상태가 되더라. 이거까지 조정하는 건 번거로워보여서 포기했다.

그래도 머리 크기는 딱히 건드는 거 없이 쉽게 살짝 티 안 나게 줄일 수 있으니 이렇게 하면 된다. 

클론 아바타 기능 끄는 방법

VRC는 VRC 내에서 다른 사람의 캐릭터를 복사해서 사용할 수 있다. 클론 아바타 기능인데, 이를 방지하기 위해 우리는 Private로 아바타를 업로드 했다. Private로 업로드한 아바타는 클론 기능이 켜져있어도 클론이 안 되는 걸로 안다.

하지만 우리가 실수를 할 수도 있고, 언제든 조심해야 할 수 있으니 클론 기능은 필요할 때 빼곤 꺼두는 게 좋다고 생각한다. 어떤 일이 어떻게 어떤 변수가 터질지 모르니까. 

유니티 아바타 복사 - yuniti abata bogsa
VRChat (VRC) 아바타 클론 기능 끄는 방법

아바타 복제를 허용한다는 문항에 체크를 풀면 된다.