Как стать автором
Обновить

Комментарии 16

это directx only, насколько я понимаю?
В OpenGL это EXT_texture_compression_s3tc, поддерживается практически везде — у NVIDIA, AMD и Intel.
В OpenGL ES, кроме того, есть NV_texture_compression_s3tc, поддерживается на NVIDIA GeForce ULP.
Замечательная статья. Люблю когда простым языком описываются какие то алгоритмы. А теперь в том же духе, но про ETC2 можно?
Спасибо! Ближайшее время точно нет, я сейчас доделываю игру, в будущем есть план её портировать на android и ios, там придется использовать другие форматы сжатия, вот тогда и опишу о них и с какими трудностями столкнулся.
Про андроид было бы интереснее — там уже шесть форматов сжатия.
По идеи OpenGL ES 3.0 должен положить конец этой мороки со сжатием — там по стандарту должно поддерживаться ETC2.
Про ETC речь не шла. А ETC2 поддерживается всеми гпу, где есть OpenGL ES 3.0. Я знаю как минимум 3 таких гпу. Но если не ошибаюсь, все известные производители (на счет n-vidia не уверен) уже выпустили гпу с поддержкой OpenGL ES 3.0.
ГПУ то выпустили, а вот устройств, где они стоят — немного. И если поддерживать старые устройства, то небольшое сравнение было бы полезно.
Для сжатых текстур в Android есть ETC1 + GL_ALPHA8, который существует на всем зоопарке, поэтому остальными нужно пренебречь. s3tc только на Tegra, pvrtc только на PowerVR (+ ограничение на квадратность)
Хорошо, что Вы осветили этот вопрос. Думаю, начинающим WP разработчикам будет полезно, сам когда-то столкнулся с этой проблемой, когда маркет отказался деплоить игру которую начал разрабатывать до ограничения в 100 мб. Вроде, оно появилось после запуска девайсов с 256 мб памяти, вроде.
Да, это серьезная проблема, особенно когда в приложение большое количество изображений. MS для устройств WP7 рекомендовала использовать не более 90 Мб, но на устройствах с 256Мб RAM при достижения 110Мб оно вылетает по памяти, а на 512Мб продолжала работать, так стало с SDK WP7.1.1.
Спасибо, очень полезная статья.
Не подскажите где можно почитать что-то подобное про остальные методы сжатия (PVR, PVRTC, ATC, ETC...)
ATC очень похож на S3TC: guildsoftware.com/papers/2012.Converting.DXTC.to.ATC.pdf

PVRTC делает 2 картинки, каждая в 16 раз меньше оригинала, и линейно интерполирует каждый пиксель в каждом блоке 4x4, используя двухбитовые коэффициенты: web.onetel.net.uk/~simonnihal/assorted3d/fenney03texcomp.pdf

Последовательно, грамотно все изложено. Как учебный материал, то что доктор прописал. Можно воспользоваться выводами. Можно понять как эти выводы сделаны, логика работы и эту же логику применить в других местах.

Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории