AIMP Forum
AIMP for Windows => Skin Editor, Skin Engine => Ошибки и замечания / Bugs => Topic started by: gr-e on March 16, 2022, 20:44:43
-
При использовании полупрозрачной маски под некоторыми элементами просвечиваются нижележащие слои.
Например, в прикрепленном примере под панелью просвечивается красный фон контейнера (левое окно), но если вместо панели использовать другой контейнер, маска работает корректно (правое окно):
(https://i.imgur.com/TA23W9k.png)
В скине по умолчанию используются контейнеры, но проблема всё равно проявляется (просвечивается темный/светлый фон на скруглении):
(https://i.imgur.com/DYVRnkp.png)
-
ИМХО, наоборот, с панелью получается более корректно, маска, ведь, действует на все дочерние элементы LayoutTexture.
Кстати, слой "Крышка" тоже по-разному работает для панели и контейнера.
-
Разница между элементами фона и элементами управления в том, что первые рисуют ФОН, а вторые - КОНТЕНТ.
Смотрите, что происходит, когда рисуется UI:
Шаг 1: движок проходит по всем элементам фона и просит их нарисоваться. Таким образом строится общий "фон" окна.
Шаг 2: движок проходит по всем элементам управления и просит их нарисоваться. При этом элементы управления рисуются ПОВЕРХ уже отрендеренного фона.
Панель - это элемент управления, она не участвует в генерации фона, отсюда и возникает просвечивание красного цвета.
-
В скине по умолчанию используются контейнеры, но проблема всё равно проявляется (просвечивается темный/светлый фон на скруглении):
Там оно просвечивает из-за неравномерной полупрозрачности маски на скруглениях. Когда-нибудь поправлю
-
Смотрите, что происходит, когда рисуется UI:
Шаг 1: движок проходит по всем элементам фона и просит их нарисоваться. Таким образом строится общий "фон" окна.
Шаг 2: движок проходит по всем элементам управления и просит их нарисоваться. При этом элементы управления рисуются ПОВЕРХ уже отрендеренного фона.
Понял.
Я пока вижу только одно решение - делать элементы фона прозрачными и вместо них задавать цвет фона панелями.
Убирать полупрозрачность на маске не вариант, т.к. будут "ступеньки" на скруглениях.