Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Я о том, что всего несколько лет назад для задачи «нарисовать повернутую так-то картинку» почему-то хватало тогдашнего железа, а сейчас внезапно перестало.
Почему Windows 2000 справлялась с полупрозрачными окнами (см. про layered windows в MSDN) еще на первых пнях и видюхах без 3д-акселерации
а KDE 4.2 на более новом железе тормозит так, что хочется разработчиков полечить электричеством?
При этом GNOME со включенным compiz'ом почему-то на той же машине (Р3-550/512М) работает вполне приемлимо (хотя можно было бы и пошустрее).
Угу, только для этого сначала нужно текстуры и т.п. из основной памяти в видео закинуть.
Кстати, с 2D все не так плохо — закрашивание прямоугольников, bitblt и т.п. операции (а для рисования окон и кнопок больше ничего не нужно) умели делать видюхи еще 90х годов. Причем достаточно быстро.
По моему это миф. Насколько я знаю, Windows XP использует именно 2D ускорение, и переключает и прорисовывает окна (те, что на WinAPI сделаны, а не на всяких явах ессно) очень даже быстро, такого как в Убунту я в ней не видел.
Без компиза при переклбючении окон, сначала появляется белый квадрат, а только через долю секунды (сообщение доходит до клиента, его будит планировщик, он начинает неспеша отправлять пакеты икс-серверу, ну понятно в общем) прорисовывается само окно (к примеру наутилуса). Такого беспорядка c родными программами в Xp я не видел! Возможно, конечно там тоже окно сначала очищается. а потом прорисовывается, но глаз этого не видит!
Мне кажется просто разработчики свободного ПО то ли увлекаются всякими 3Д-эффектами, то ли у них просто нет опыта и знаний майкрософт (которая ускорение на десктопе использует наверно лет 10 уже). То ли производительность не является приоритетом в разработке.
Дык зачем тогда его было делать, этот оверхед??
Ну хрен с ним, делайте на 3Д ускорении (это я к разработчикам), но сделайте уже чтобы не тормозило!
Я например люблю проверять графические библиотеки таким образом: вывожу окно с 1500 кнопками и пробую его сворачивать. разворачивать, такскать по экрану и т.д., а вот разработчики видимо брезгуют тестами и профайлингом.
По поводу самого KDE пища для размышлений.Да уж, достижедение. На машине с 265MB всё работает. Только вот во времена KDE 2.0 нормальная машина имела 32MB, а 64MB — это было уже «супер».
вот у меня видеокарта достаточно приличная (AMD 4850), она как простаивает при прорисовке кнопочек что ли?Именно так. При прорисовке кнопочек видеокарта либо совсем не используется (чаще всего), либо используется для исполнения мизерной части всего, что нужно.
Может вопрос глупый, но я не знаком с внутренним устройством винды. :)Причём тут винда? Тут простая логика: на максималке в Fallout'е у вас на экране десятки (ну от силы — сотни) объектов и куча текстур, при нажатии на кнопочки — тысячи объектов и какое-то мизерное количество текстур. Соответственно прикрутить тут видеокарту толком не к чему, а CPU загружен «по полной».
Но вот в Supreme Commander на экране одновременно несколько тысяч объектов и это все вместе с текстурами и другими сопутствующими элементами.Это рекламный трюк — там может быть объектов дофига и больше, но меняются они не так часто. Иначе процессор захлебнётся.
Ни за что не поверю, что в век 3d могут быть какие-то нерешаемые проблемы с 2d.Есть простая аналогия: с помощью динамита можно «свернуть горы» очень быстро, за доли секунды обрушить гигантское здание, но это совершенно не помогает вам ускорить замену труб в летний период. Другие задачи — другие ограничения.
Не спешите переходить на новую версию любимой программы