AIMP Forum
AIMP for Windows => Skin Editor, Skin Engine => Вопросы / Questions => Topic started by: Kibermanick on August 09, 2016, 00:19:08
-
Вопрос такой, влияет ли на производительность прозрачность текстур? Например: если текстура у спектрума прозрачная но, находится поверх не прозрачного фона и при этом, над спектрумом прозрачный элемент.
-
Вопрос такой, влияет ли на производительность прозрачность текстур?
В скин-движке 4-ой версии есть оптимизация, связанная с прозрачностью текстур (а точнее кадров):
Прозрачные кадры
Некоторые элементы имеют строгий набор кадров, например: 1-ый кадр — фон, 2-ой кадр — «крышка», 3-ий кадр — маска. Но что делать, если нам нужна маска, но не нужна «крышка»? Правильно — делаем второй кадр полностью прозрачным. Но в таком случае второй кадр будет накладываться поверх содержимого элемента в момент отрисовки, хотя по сути он несет никакой полезной информации.
В новой версии скин-движка я добавил механизм, который анализирует кадры текстуры и позволяет пропускать полностью прозрачные кадры при отрисовке. Анализ кадров происходит при компиляции скина в редакторе, таким образом, прозрачные кадры теперь никак не влияют на производительность программы.
Но это касается прозрачных кадров внутри одного элемента.
Вопрос такой, влияет ли на производительность прозрачность текстур?
Мои предположения:
1. Влияет.
2. Но, думаю, гораздо больше влияет статичные или нет фон и элемент поверх него.
Если статичные, то просчитывание наложения текстур происходит только один раз, наверно.
3. Если контент динамический, то возрастает роль размеров обновляющихся элементов (чем больше размер, тем больше влияние на производительность).
Например: если текстура у спектрума прозрачная но, находится поверх не прозрачного фона и при этом, над спектрумом прозрачный элемент.
Тут наверняка влияет, но интересно как сильно?
-
Мои предположения:
1. Влияет.
2. Но, думаю, гораздо больше влияет статичные или нет фон и элемент поверх него.
Если статичные, то просчитывание наложения текстур происходит только один раз, наверно.
3. Если контент динамический, то возрастает роль размеров обновляющихся элементов (чем больше размер, тем больше влияние на производительность).
Тут наверняка влияет, но интересно как сильно?
Весьма познавательно.
Вот и мне интересно.)
-
над спектрумом прозрачный элемент.
Насколько я знаю простая прозрачность влияет мало или вообще не влияет, т.к. это просто точки с просто цветом.
А вот блюр поверх динамического контента (к примеру, спектрума) - вот это хорошо грузит плеер.
-
Вопрос такой, влияет ли на производительность прозрачность текстур? Например: если текстура у спектрума прозрачная но, находится поверх не прозрачного фона и при этом, над спектрумом прозрачный элемент.
Абсолютно прозрачные кадры текстуры пропускаются движком, в остальных случаях все работает одинаково. BlurredGlass, да, самый медленный элемент (его скорость работы зависит от количества ядер ЦП)
-
Абсолютно прозрачные кадры текстуры пропускаются движком, в остальных случаях все работает одинаково. BlurredGlass, да, самый медленный элемент (его скорость работы зависит от количества ядер ЦП)
Ясно.
А влияет ли режим текстуры, Растянуть, замостить, центрировать(этот наверное самый легкий)?
-
Ясно.
А влияет ли режим текстуры, Растянуть, замостить, центрировать(этот наверное самый легкий)?
Я не замерял, но думаю, что режим "замостить" тяжелее
-
Влияет ли на производительность количество кадров в спектруме, или больше влияет размер одного кадра?
-
Влияет ли на производительность количество кадров в спектруме, или больше влияет размер одного кадра?
Влияет размер самого элемента, и количество слоёв, которые используются для отрисовки (маска, крышка и т.п).