Здравствуйте, Went, Вы писали:
W>Здравствуйте, c-smile, Вы писали: CS>>Эра GDI прошла. W>Я не совсем понял. В Windows10 реинкарнировали "Аэро" или просто какая-то сторонняя библиотека для создания собственного "кулэхвекта" использует DirectX там, где GDI, собственно, был беспомощен изначально?
Это вот Mac OS, тот же эффект:
Идея проста: вместо изобретения разных тем/стилей используется одна тема и текущий desktop background для задания варианта цвета.
Такой эффект есть на Windows/UWP, Mac OS и Linux/Gnome.
Теперь вот со Sciter на обычных desktop приложениях тоже.
Здравствуйте, AlexRK, Вы писали:
ARK>Здравствуйте, c-smile, Вы писали:
CS>>Вот для того чтобы сделать такое окно CS>>Эра GDI прошла.
ARK>На Windows 7 работает? А то эра Windows 10 пройдет раньше (так же, как было с вистой и XP).
Здравствуйте, Мёртвый Даун, Вы писали:
МД>Здравствуйте, c-smile, Вы писали:
CS>>Эра GDI прошла.
МД>Ты наверное будешь удивлен, но по скорости GDI до сих лучше всех для нативных приложений. И проще.
GDI это CPU rendering примитивов. По определению быстро не может. Особенно на high-DPI мониторах.
Здравствуйте, c-smile, Вы писали:
CS>Это вот Mac OS, тот же эффект: CS>Идея проста: вместо изобретения разных тем/стилей используется одна тема и текущий desktop background для задания варианта цвета. CS>Такой эффект есть на Windows/UWP, Mac OS и Linux/Gnome. CS>Теперь вот со Sciter на обычных desktop приложениях тоже.
Я правильно понял, что идея и эффект заключаются в том, что мы ставим главному окну приложения ненулевую прозрачность? )
Здравствуйте, alex_public, Вы писали:
_>Здравствуйте, c-smile, Вы писали:
CS>>Это вот Mac OS, тот же эффект: CS>>Идея проста: вместо изобретения разных тем/стилей используется одна тема и текущий desktop background для задания варианта цвета. CS>>Такой эффект есть на Windows/UWP, Mac OS и Linux/Gnome. CS>>Теперь вот со Sciter на обычных desktop приложениях тоже.
_>Я правильно понял, что идея и эффект заключаются в том, что мы ставим главному окну приложения ненулевую прозрачность? )
CS>Вот для того чтобы сделать такое окно CS>ему нужно выставить флаг WS_EX_NOREDIRECTIONBITMAP и рисовать содержимое непосредственно в DirectComposition visual tree десктопа — т.е. напрямую DirectX surface экрана.
Здравствуйте, Мёртвый Даун, Вы писали:
МД>Ты наверное будешь удивлен, но по скорости GDI до сих лучше всех для нативных приложений. И проще. МД>Вот как раз прям сейчас пишем приложение с довольно могучим GUI, так вот отказались от всяких этих GDI+, DWM, DirectX и прочего ибо тормоза.
Я был бы очень удивлен, если б мне кто-то хотя бы теоретически мог объяснить, как ГДИ может быть быстрее ДиректИкса.
Здравствуйте, Мёртвый Даун, Вы писали:
МД>Ты наверное будешь удивлен, но по скорости GDI до сих лучше всех для нативных приложений. И проще.
Ты в очередной раз спорол ерунду
МД>Вот как раз прям сейчас пишем приложение с довольно могучим GUI, так вот отказались от всяких этих GDI+, DWM, DirectX и прочего ибо тормоза.
Это только лишь говорит о радиусе кривизны ваших рук
Здравствуйте, c-smile, Вы писали:
_>>Я правильно понял, что идея и эффект заключаются в том, что мы ставим главному окну приложения ненулевую прозрачность? ) CS>Ну нет конечно. CS>Идея состоит в том что там blur behind в realtime: https://docs.microsoft.com/en-us/windows/uwp/design/style/acrylic CS>Т.е. для того чтобы показать такой background эффект нужно работать с desktop как с одним большим окном.
Здравствуйте, AeroSun, Вы писали:
AS>Здравствуйте, swame, Вы писали:
S>>Когда тебе дадут потыкать в это пальцем, все поймешь по запаху
AS>У меня последняя Win10 — часть своих приложений они переписали под новый дизайн. Стало и удобнее и горазда-гораздо красивше
Часть переписали, часть, как водится, оставили в стиле предыдущей Win10, часть Win8, часть Win7, часть в стиле Висты, и часть в стиле XP.
Здравствуйте, c-smile, Вы писали:
_>>Хм, по ссылке это преподносится как вроде какая-то новейшая идея в дизайне, но разве оно не появилось в винде ещё во времена Висты? И доступ из вин32 апи помнится выглядел так https://msdn.microsoft.com/en-us/library/windows/desktop/aa969537(v=vs.85).aspx (а в той же Qt уже просто одной функцией http://doc.qt.io/qt-5/qtwin.html#enableBlurBehindWindow). Это разве не тоже самое или там какой-то особенный blur? ))) CS>enableBlurBehindWindow основано на DwmEnableBlurBehindWindow API которая не работает в Windows 8 и 10. CS>В QtWin поддержку Acrylic сделать сложно будет (если вообще возможно) ибо нужно не OpenGL а DirectX.
Ну вообще то в Qt под винду OpenGL вполне себе работает через DirectX (с помощью ANGLE), так что проблем не вижу. Хотя не уверен и в потребности DirectX — такая тривиальная вещь должна элементарно делаться прозрачностью и простейшим эффектом поверх. Но это всё не суть — я то не про Qt спрашивал, а про принципы дизайна. Этот та же техника что в Висте или нет? И если та же, то почему оно называется инновационным дизайном?
Здравствуйте, AeroSun, Вы писали:
AS>И тут внезапно: это передовой дизайн MS
Не-не, не путайте "Микрософт имени Гейца" и его последущая жалкая пародия! Всё, что образовалось в эпоху "плоских интерфейсов" — полное отстоище и ни разу не юзабельно — ЭТО делали не дизайнеры!
Здравствуйте, c-smile, Вы писали:
CS>Причем здесь "вендекапец" ?
К тому что "Эра GDI прошла", ага
CS>См. https://fluent.microsoft.com/
Что это за булшит бинго без единого примера?
Дальнейшее развитие их квадратно-гнездового метрошного подхода?
Я как юзер такой интерфейс просто не перевариваю. Не удобно же!
Здравствуйте, alex_public, Вы писали:
_>Но это всё не суть — я то не про Qt спрашивал, а про принципы дизайна. Этот та же техника что в Висте или нет? И если та же, то почему оно называется инновационным дизайном?
Принципиально разница в дизайне состоит в том что [очень условно] Windows отказывается от themes.
Вместо themes есть три цвета: background, text и т.н. accent color (выбирается пользователем или автоматически по desktop background image).
Все остальное получается вариацией этих трех цветов с разными opacity + этот вот акриловый background.
В Windows 7 это всё вообще очень сложно сделать — child окна там непрозрачные, ClearType который с альфаканалом не дружит в принципе и всё такое.
Технически можно, но путем windowless элементов и залезая на уровень DWM. Собственно что Sciter и делает.