uncle-vunkis wrote:Я только что на плагине просмотрел картинку bmp размером 20000x20000, и всё показало правильно.
Как это реализуется в плагине? Разбивается на части? Ибо самый распространненный максимальный размер текстуры это 4к на 4к. На "ультра" современных видяхах это 8к на 8к как максимум (GL_MAX_TEXTURE_SIZE=8192 на 8800 GTS), больше не видел. Откуда тогда проблема с памятью описанная хартом? Надо просто разбивать на меньшие куски (4 штуки) размером ближайшей степени двойки от разрешения экрана. То есть если у харта 1680 на 1050, то это будет 4 текстуры по 2к: 2K*2K*4=16Мб - должно хватать на любом встроеном.
Кто-то тут заикался про дх10, что мол легко реализуемо в терминах существующей имплемиентации. Так в чем проблема? ДХ10 так ДХ10. Тем более, как я понял, глюки только в виндовс виста и выше, а там дх10 де факто.
uncle-vunkis wrote:Ещё минус - большее время на создание мип-уровней
Их вроде как можно генерировать динамически по мере необходимости, но не думаю, что стоит заморачиваться с умодавящим алгоритмом ради ускорения в четветь секунды на файлах размером 5к на 5к.
uncle-vunkis wrote:Качество изображения для скейлов, попадающих между мип-уровнями, у трилинейки будет выше
Шоты можешь показать? Уменьши 1100x1100 до 400x400 билинейной и трилинейной.
Я вот поэкспериментировал - разницы не вижу. Да и не должно быть насколько я себе представляю ибо
трилинейная на то и
трилинейная, что ей надо третее измерение (глубину сцены) К примеру, трилинейная не делается в шейдере, где можно оперировать только пикселями текущего мипа. Мне вот нужно было для дума, да нет возможности. Научишь?
http://prboom-plus.sourceforge.net/a1.png
http://prboom-plus.sourceforge.net/a2.png
Вот тут видно, но это обычный GL_LINEAR на увеличение.
http://prboom-plus.sourceforge.net/a3.png
http://prboom-plus.sourceforge.net/a4.png
Хотя могу заблуждаться.
uncle-vunkis wrote:В этом плагине реализован плавный зум. Для него трилинейка также пригодится - не будет явных скачков (переходов между мип-уровнями)
Как ты себе это представляешь чисто теоретически? Надо вывести большую картинку квадом 600 на 600. Есть два соседних мипа: 1024х1024 и 512х512. Вроде как очевидно, что берется 1024х1024 и уменьшается либо неарестом либо линеаром. Мип 512х512 в этом случае не поможет никак.