1. Dynamic Bones를 사용하지 마라
Dynamic Bones는 PhysBones가 나오기 전에 사용했던 것이다. 자신의 아바타에 Dynamic Bones를 사용중이라면 제거하자.
2. Cloth의 사용을 제한하자
무슨말인지 모르겠다.
3. 아바타에서 meshes의 수를 줄이자
mesh 렌더러는 Static Mesh Renderers와 Skinned Mesh Renderers가 있다. Static Meshes는 변형되지 않는다. 그러나 Skinned Meshes는 그렇지 않다. Blender같은 툴을 이용해 합칠 수 있다.
4. 사용하는 material slots의 양을 줄이자.
Blender에서 material을 합칠 수 있다.
5. VRAM 사용량을 봐라
texture는 vram을 먹는다. 더 높은 화질의 텍스처를 사용하면 vram을 더 사용한다.
Unity에서 "Max Size" 변수값을 줄여 텍스처 사이즈를 줄이자.
Poiyomi's Texture Optimization guide를 살펴보자. 텍스처를 최적화하는 방법을 훌륭하고 포괄적이게 가이드한다.
5.1. Poiyomi's Texture Optimization
- texture 사이즈 재보기는 avatar performance tools를 사용하자.
- texture import setting에서 해상도를 줄여라! 모든 texture가 2k나 4k일 필요는 없다.
- mipmaps를 망가뜨리지 말아라 _ 그것과 함께라면 너의 material은 더 좋게 보이고 실행될것이다!
- Crunch는 VRAM 사용향을 줄이지 않는다. 그러나 다운로드 사이즈는 줄인다. Crunch는 마법이 아니다!
- Normal Maps를 위해 RG Compressed BC5를 사용해라. Normal Quality(DXT5nm)과 High Quality(BC7)은 같은 VRAM을 사용하지만 더 안좋게 보인다.
- Alpha를 위한 텍스처는, High Quality(BC7)을 이용하자. Normal Quality(DXT5)은 같은 VRAM을 사용하지만 더 안좋게 보인다.
- 원본 texture를 저장할 때 JPG를 사용하지 말아라. 퀄리티가 떨어지고 VRAM/다운로드 사이즈에 이득이 없다.
avatar performance tools에서 unitypackage를 받아서 import하자
Thry - avatar - vram을 누르자
input에 자신의 아바타를 드래그하면 된다.
Show assets of disabled Objects를 체크한후 텍스처들을 편집하면 된다.
6. 무거운 쉐이더를 피하자
어떤 쉐이더는 GPU에서 렌더링하는 시간을 많이 잡아먹는다. 일반적으로 사용되고 검증된 커뮤니티 쉐이더를 사용한다면 그것만으로 충분하다.
7. bones의 수를 줄이자
사용하지 않는 bones는 없애자. 옷장 기능은 modular avatar를 사용한다면 문제 없지만, 헤어 기능은 사용하는 헤어만 bone을 키고 나머지는 끄자.
8. particle 시스템을 줄이자
9. Lights의 수를 줄이자
참고: https://creators.vrchat.com/avatars/avatar-optimizing-tips
https://www.poiyomi.com/blog/2022-10-17-texture-optimization
'Unity > VRChat' 카테고리의 다른 글
VRChat VRC Contact Receiver(손뼉치기) (0) | 2024.01.08 |
---|---|
VRChat 아바타 옷장/ 헤어고르기/ 바디스킨고르기/ 여러아바타 (0) | 2023.12.18 |
VRChat 아바타 Expression ON/OFF 토글 기능 만들기 (0) | 2023.12.16 |
VRChat 아바타 업로드 하는법 - avatar project (0) | 2023.12.13 |
VRChat 아바타 업로드 하는법 - SDK 설치 (0) | 2023.12.13 |