Когда я занимался функцией генерации террейна (
Тема: Веселые секреты, Автор: Diplomat), мне пришла в голову мысль - проверить на производительность следующие два флага:
256: Store texture in vram
512: Force the use of high color textures
Вот какие у меня результаты:
Моя машина: CeleronD 2.4ГГц, GF4 MX440SE, 512Mb Dual
1)800x600x16
* а)обычные флаги (1+8): средний FPS 100
* б)обычные флаги + Store texture in vram (1+8+256): средний FPS 46
* * * * Замедление в 2.17 раза
* в)обычные флаги + Force the use of high color textures (1+8+512): средний FPS 72
* * * * Замедление в 1.39 раза
2)800x600x32
* а)обычные флаги (1+8): средний FPS 69
* б)обычные флаги + Store texture in vram (1+8+256): средний FPS 28
* * * * Замедление в 2.46 раза
* в)обычные флаги + Force the use of high color textures (1+8+512): средний FPS 57
* * * * Замедление в 1.21 раза
|
Вобщем мои выводы следующие:
- использовать текстуры с флагом 256 только в редких исключениях т.к. этот режим работает быстрее и лучше только с функцией CopyRect между двумя текстурами и при рисовании кубической карты текстур в реальном времени. Так же он выключает режим фильтрации MipMap, этого же эффекта можно добиться не включая флаг 8(Mipmapped);
- Флаг 512 по моему вообще не стоит использовать (в справке блица написано что его применение оправдано только при 16-ти разрядном разрядном разрешении экрана, только для 16-ти разрядных текстур совместно с флагом 2 (Alpha)).
Вот тест который я собрал из
примера Diplomat'a: