메테리얼 수를 왜 줄여야하느냐? 바로 최적화 때문이다.
메테리얼의 수만큼 CPU에서 GPU에게 그리라고 명령을 하는데, 이 명령에 병목 현상이 상당하다. 즉 렉을 유발하는 원인이다.
따라서 쉐이더가 같은 메테리얼 수가 4개인 것보다 1개인게 훨 낫다.
같은 쉐이더를 쓰는 메테리얼이 4개있다면 이걸 하나로 합치고, A 쉐이더 2개, B쉐이더 2개를 쓰는 메테리얼이 있다면 합쳐서 메테리얼을 2개로 만들자.
-----------------------------------
블렌더 2.8로 작업할건데, 2.79도 차이점은 없다.
같은 강좌가 하나있긴한데, 구버전이라 인터페이스가 다르기 때문에 새로 작성함.
https://vrcat.club/threads/material-combiner-blender-addon-1-1-6-3.2255/
여기서 애드온을 다운 받아주자. 이 애드온은 최신 Cats플러그인을 깔면 자동으로 깔아주지만, 별도의 탭으로 만드려면 따로 다운받아야한다.
zip파일인데 압축풀지 말 것.
1.블렌더를 켠다. 상단의 편집->환경설정에 들어간다.
2.애드온 탭에 들어간다.
3.설치를 눌러서 아까 다운 받은 zip파일을 선택한다.
4.설치 후, 위 사진처럼 Shotariya's Material Combiner에 체크가 되있으면 된다. 안되있으면 체크.
그럼 애드온 설치가 끝났다.
Cats플러그인을 통해 모델을 불러오고, 기본 작업을 해준다. (꼭 Cats가 아니여도 된다.)
그 후 오른쪽에 새로 생긴 MatCombiner탭에 들어가서 Generate Material List를 눌러준다.
그럼 이런식으로 한 메쉬가 가지고 있는 메테리얼들을 보여준다.
위 사진은 ear메쉬, pat메쉬, Body메쉬가 나눠져있고, 그 안에서 쓰이는 메테리얼들을 보여주고 있다.
여기서 합치고 싶은 메테리얼들을 체크해준다.
나는 Hair메테리얼과 Pat메테리얼들은 따른 쉐이더를 쓸거라 체크를 안했고,
나머지는 같은 쉐이더를 쓸거라 병합하기 위해 체크해뒀다.
그 후 밑에 Crop outside Images By UV는 체크해제 해준다.
이 기능은 이미지를 압축해주는건데, 용량은 줄어들지만 가까이서 보면 이미지에 노이즈가 많이 생길 수도 있기 때문.
그 후 Save Altas to...를 통해 경로를 지정해주면, 그 경로로 합쳐지진 텍스쳐 하나가 만들어진다.
이 합쳐진 텍스쳐를 메테리얼에 넣어두고 아바타에 넣으면 된다.
메테리얼이 합쳐졌다. 7개에서 3개로 줄어든것이다. 이제 Cats플러그인이나 기타 등등 방법으로 모델을 exports하고
유니티에 넣고, 아까 만들어진 텍스쳐를 메테리얼에 넣고, 그 메테리얼을 아바타에 넣으면 된다.
브얄챗이 최적화 똥겜이라고는 하지만, 유저가 컨텐츠를 만드는 게임인 만큼 유저들도 최적화에 신경 써주면 좋겠다.
아니면 브얄챗에서 강제적으로 합치는 기능을 만들어주면 좋겠네.
끗