Подготовка к работе
Особенности недеструктивной работы с аватарами
VRChat SDK отображает ранг производительности для аватаров, находящихся на сцене в текущий момент, и не учитывает недеструктивные изменения, вносимые Modular Avatar и прочими пакетами.
Есть несколько способов увидеть аватар, который будет загружен в VRChat, и его ранг производительности:
- Собрать (запечь) аватар на сцене. Для этого:
- Нажмите ПКМ по аватару -
Modular Avatar-Manual Bake Avatar. - На сцене в паре метров перед аватаром появится "запеченный аватар" с припиской
(Clone):- Для одного аватара одновременно может быть только один клон (последний), предыдущие будут поломаны.
- Если вы в аватаре также используете VRCFury, то это еще не финальная версия аватара, для нее нужно дополнительно выбрать клона и в меню сверху выбрать
Tools-VRCFury-Build an Editor Test Copy, смотреть изменения уже на нем.
- В клоне можно посмотреть аватар в том виде, в котором он будет загружен в VRChat. Проверьте по клону удалено ли все лишнее из аватара.
- Посмотрите характеристики Clone-аватара в VRChat SDK
- Нажмите ПКМ по аватару -
- С
Anatawa Avatar OptimizerвALCOM/Creator Companionдобавляется пакетanatawa12 gist's pack- Добавьте пакет в проект
- Один раз в проекте нужно включить отображение
Actual Performance, для этого - в меню сверху выберитеTools-anatawa12's gist selector- галочка напротивActualPerformanceWindow- снизуApply - Запустите
Play Mode(можно сGesture Manager). При входе появится окноActual Performanceс рангом производительности аватара для ПК и Android.- Android можно выключить пока не занимаетесь Android аватаром.
- Если окно оставить в проекте, будет показывать результат последнего запуска аватара.
Все изменения нужно делать не в клоне, а в оригинальном аватаре.
Также при сборке/запуске аватара вам скорее всего будет показывать много предупреждений в NDMF Console.
- Пока на них желтый предупреждающий знак - прочитать, понять что это, и если так и задумано, проигнорировать.
- Красные предупреждающие знаки нужно исправить, без них аватар не загрузится
Пример предупреждений:

Используйте последнюю рекомендуемую VRChat-ом версию Unity, обновите все пакеты до последних версий в ALCOM/Creator Companion.
Полезные ссылки
- https://vrc.school/ - много полезных статей , объясняющих создание аватаров в Unity (на английском)
ALCOM - альтернатива Creator Companion
Вместо Creator Companion рекомендую использовать ALCOM, сделанный anatawa12, автором используемого в гайде оптимизатора аватаров. Работает быстрее и имеет массу Quality of Life фишек. Переносить из Creator Companion при установке ничего не нужно, ALCOM автоматом подтянет настройки и список проектов.
Обязательные пакеты
Используемые в гайде пакеты и ссылки на репозитории для ALCOM/Creator Companion:
NDMFиModular Avatar- основа недеструктивной работы с аватарами, остальные пакеты зависят как минимум от NDMF. Сайт, GitHub 1, GitHub 2, ссылка на репозиторий:Anatawa12 Avatar Optimizer- недеструктивный оптимизатор аватаров, используемый в гайде. Сайт; GitHub, ссылка на репозиторий:Thry's Avatar Performance Tools- полезные утилиты по определению производительности аватара. GitHub, ссылка на репозиторий:Gesture Manager- эмулятор аватара в Play Mode в Unity, позволяет проверить аватар без загрузки в VRChat, уже встроен в ALCOM/Creator CompanionMeshia Mesh Simplification- недеструктивное сжатие моделей по треугольникам (полигонам) Сайт, GitHub, ссылка на репозиторий:- При установке данного пакета Unity предложит вам обновить под него библиотеку Boost. Проблем с обновлением библиотеки я пока ни у кого не видел, но на всякий случай можете сделать копию своего проекта
Используемые пакеты не выполняют оптимизацию компонентов VRCFury, при их наличии и загрузке аватара будет выводиться соответствующее предупреждение. Некоторые компоненты VRCFury в определенных ситуациях скорее всего могут быть проигнорированы.
Пакеты популярных шейдеров
LilToon- Сайт, GitHub, ссылка на репозиторий:Poiyomi(бесплатная версия) - Сайт; GitHub, ссылка на репозиторий:
Прочие пакеты
-
d4rk' Avatar Optimizer- судя по описанию, во многом пересекается с компонентомAAO Trace and optimizeи делает дополнительные фишки. GitHub, ссылка на репозиторий:- В текущей версии гайда не могу гарантировать его работу, надо протестить в следующих версиях, но если хотите использовать его - попробуйте не добавлять
AAO Trace and optimize. По идее нет особого смысла иметь оба компонента на аватаре одновременно.TODO Протестить работу этого оптимизатора с гайдом. Судя по коду - он знает по крайней мере про Modular Avatar и запускается после него.
- В текущей версии гайда не могу гарантировать его работу, надо протестить в следующих версиях, но если хотите использовать его - попробуйте не добавлять
-
Hai Prefabulous For VRChat- частично повторяет функционал предыдущих пакетов, но появился раньше, плюс имеет некоторые дополнительные необязательные плюшки. А репозиторий от Hai - это в принципе маст-хэв для работы с аватарами. Сайт; GitHub 1; GitHub 2, ссылка на репозиторий:TODO Добавить компоненты из Prefabulous в гайд