Войти
ПрограммированиеФорумГрафика

Формат текстур в 2018

Страницы: 1 2 3 4 5 6 Следующая »
#0
18:13, 16 фев. 2018

В общем какой формат текстур стоит юзать в 2018 году для кросплатформенной разработки? (win, mac, ios, android, linux, кофеварка)
Сейчас юзаю .png. Пока устраивает(кроме скорости загрузки)
Есть вариант написать свои велосипеды.
Есть вариант юзать .dds
Недавно наткнулся на формат ktx? Как оно вообще? Можно юзать?

В общем кто что юзает?)


#1
18:41, 16 фев. 2018

oxotnik
> Пока устраивает(кроме скорости загрузки)
ну дык скорость загрузки или размер файла, выбирай)

#2
21:03, 16 фев. 2018

oxotnik
> В общем какой формат текстур стоит юзать в 2018 году для кросплатформенной
> разработки?
Можно везде DDS. Это всего лишь контейнер.
>Недавно наткнулся на формат ktx? Как оно вообще? Можно юзать?
Работает. На Windows в режиме OpenGL ES emulator'а, на Android тоже. юзать можно.
>В общем кто что юзает?)
Desktop Windows/Mac OS X/Unix - DDS
Android: Тут все сложнее, пока жив OpenGL ES 2.0(к примеру из-за Mali 400-mali 450) приходиться использовать разные форматы сжатия текстур с альфа каналом. Раньше было dds для Tegra, ktx - Adreno 20x, pvr - Power VR, tga для  Mali 4xx, Сейчас для OpenGL 3x можно DDS/KTX с сжатием ETC2 или более новым продвинутым ASTC.
IOS - рекомендуют pvr формат со своим сжатием PVRTC от Imagination Technologies.

#3
21:29, 16 фев. 2018

в чем профит ktx ? кто знает?

#4
23:23, 16 фев. 2018

Татарин
> в чем профит ktx ? кто знает?
Под OpenGL разработан.

#5
14:23, 17 фев. 2018

Татарин
> в чем профит ktx ? кто знает?

https://www.khronos.org/opengles/sdk/tools/KTX/file_format_spec/

#6
14:46, 17 фев. 2018

innuendo
да я видел этот документ, просто интересно для чего нужен еще один стандарт, насколько я понял это просто контейнер в котором уже описаны формат текстуры и так далее, то что я раньше прописывал в коде для каждой текстуры там уже прописано в файле, для webgl не очень полезная функция так как там обычно все текстуры одного формата.

#7
16:57, 17 фев. 2018

oxotnik
> какой формат текстур стоит юзать в 2018 году
Да юзай тот же самый что и в 2017. Все по прежнему

#8
18:23, 17 фев. 2018

Татарин
>да я видел этот документ, просто интересно для чего нужен еще один стандарт, насколько я понял это просто контейнер в котором уже описаны формат текстуры и так далее
Это стандарт для OpenGL что-бы прямо взять и напрямую использовать значения glFormat, glInternalFormat для OpenGL функций типа

glTexImageXD
glTextureStorageXD
glCompressedTexImageXD
Если взять для сравнения DDS, то тебе придется разбирать DDSheader и/или DXT10_header, анализировать flags  и находить соответствия для OpenGL функций.
для PVR чуть проще, там просто switch на pixel format.
Иными словами KTX в разы проще для OpenGL/OpenGL ES, а если взять LibKTX так она вообще выдает готовый OpenGL Texture Id.

#9
(Правка: 21:37) 21:34, 17 фев. 2018

Используй TGA упакованные в pk3 файл, если хочешь, чтобы можно было модить без мата и твоя карма спала спокойно.

Я только что имплементировал у себя всех этих форматов и автоматическое преобразование загруженной картинки в требуемый, что работает как в ГЛ так и в ГЛЕС. Да хоть жпег. Да хоть .PCX
Ощутив себя достиженцем, круче которого - только яйца, я начинаю с мудрым видом давать советы.
#10
21:52, 17 фев. 2018

Cheb
pk3 ? в 2018?
Вообще желательно что бы вообще нельзя было модить) НО мы это решаем всякими контрольными сумами всех ресов

#11
23:15, 17 фев. 2018

oxotnik
> pk3 ? в 2018?
Зип архив же))

#12
14:47, 18 фев. 2018

oxotnik
> Сейчас юзаю .png. Пока устраивает(кроме скорости загрузки)
ты используешь самый бесполезный формат для тексту. Разве что они у тебя мультяшные.
У нас в 2010-м был свой формат-контейнер, который позволял использовать разные компрессоры внутри вплоть до отдельного компрессора для заданных каналов: например карты нормалей + AO хранились как 3dc для nx,ny и grayscale jpeg для AO. Но это у нас была заморочка с минимизацией пакета ресурсов. Но этот же формат позволял хранить текстуры с максимизацией скорости загрузки. В идеале в design пайплайне у тебя должны быть несколько форматов файлов для разных типов текстур текстур, чтобы обеспечивать максимальное удобство работы художников, а при сборке билда все текстуры конвертируешь в целевой формат платформы. К текстурам кстати ещё метаинформация нужна, просто из контента файла ты не поймёшь, как правильно их жать.

#13
15:40, 18 фев. 2018

Мизраэль
Вот я и думаю свой велосипед юзать, но вот ktx выглядит примерно как я хочу свой сделать.
А чем уж так .png плох?

#14
16:13, 18 фев. 2018

oxotnik
> А чем уж так .png плох?
низкая степень компрессии для фотографических текстур, отсутствие мип-уровней, невозможность хранить 2 канала

Страницы: 1 2 3 4 5 6 Следующая »
ПрограммированиеФорумГрафика