You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Для упаковки текстур потребуется скрипт, задача которого позвать Compressonator и сжать в dds/ktx2
При этом скрипт будет ещё звать например libvps (быстро) или imagemagick (медленно), чтобы metal_map и roughness_map упаковать в один файл metalroughness.png
На тему в каком канале что хранить это под вопросом, я пока не понял как оптимальнее.
Cкрипт ещё будет обходить mat файлы и переписывать строки
Это просто пример. Здесь green и red это устное соглашение, по идее не нужно пихать в шейдер лишнюю логику выбора каналов, но если без удорожания можно сделать выборку каналов то это будет неплохо (наверное).
Ещё можно схлопнуть в "metalroughness_map" "${name}_metalroughness.ktx2" но это мне меньше нравится.
The text was updated successfully, but these errors were encountered:
Пока что со схемой упаковки я не определился, но я точно могу сказать, что будет какая-то определенная схема, без возможности выбора указать что в каком цветовом канале лежит (опять же, это сделано чтоб не городить лишней логики в шейдере).
Ну так вот, планируется сделать что-то приблизительно такое. Можно в параметрах материала указать вот так:
"metal_map" "1.dds"
"roughness_map" "2.dds"
А можно вот так
"combined_map" "abc.dds" // this texture contains roughness/metalness/etc. in it, packed in different color channels
Первое удобно для непосредственно процесса создания контента. Второе, на этапе когда весь контент уже готов, позволяет эффективно упаковать текстуры и сэкономить приличное количество видеопамяти и дискового пространства.
Для упаковки текстур потребуется скрипт, задача которого позвать Compressonator и сжать в dds/ktx2
При этом скрипт будет ещё звать например libvps (быстро) или imagemagick (медленно), чтобы metal_map и roughness_map упаковать в один файл metalroughness.png
На тему в каком канале что хранить это под вопросом, я пока не понял как оптимальнее.
Cкрипт ещё будет обходить mat файлы и переписывать строки
на
Это просто пример. Здесь green и red это устное соглашение, по идее не нужно пихать в шейдер лишнюю логику выбора каналов, но если без удорожания можно сделать выборку каналов то это будет неплохо (наверное).
Ещё можно схлопнуть в
"metalroughness_map" "${name}_metalroughness.ktx2"
но это мне меньше нравится.The text was updated successfully, but these errors were encountered: