LINUX.ORG.RU
ФорумTalks

Qt. Raster graphic system


0

0

Заметил у ебилдов свежевышедшего куте 4.5 (раньше сидел на транке нокии) USE-флаг "raster". Описание такое: "Use the alternative raster graphicssystem as default rendering engine". Я так понимаю, "raster" переводится как "растр". Погуглил, нагуглил информации совсем немного: во-первых все говорят, что оно даёт огромный прирост производительности, а во-вторых все говорят, что оно ломает некоторые вещи. Может кто-нибудь про это поподробнее рассказать? Да, флаг я этот врубил, завтра днём посмотрю, заработает ли что-нибудь.

http://labs.trolltech.com/blogs/2008/10/22/so-long-and-thanks-for-the-blit/

http://amarok.kde.org/blog/archives/887-Qt-4.5-RC1-packages-for-Intrepid,-bui...

★★★★★

Для Ъ:

Starting Qt 4.5 you can choose the graphics system to use. It is ready available in the Technology Preview and in the snapshots. The way to pick backend is currently to specify a command line argument: “-graphicssystem raster” for the software engine or “-graphicssystem opengl” for OpenGL. The OpenGL graphicssystem is considered experimental for 4.5, while the raster backlend is considered fully supported on all platforms.

****************************************************************

Windows (Intel Core 2 Quad 2.6 GHz, 4 GB Ram, NVidia GeForce 8500 GT)

* Native: 60 Fps
* Raster: 60 Fps
* OpenGL: 245 Fps

Naturally, Native and Raster run at the same speed on windows because native is the raster backend.

X11 (Intel Pentium 4, 3 GHz, 1 Gb Ram, Nvidia GeForce 6600)

* Native: 20 Fps
* Raster: 36 Fps
* OpenGL: 92 Fps

This machine is running a slightly older graphics card than the other two machines, but its still a significant boost compared to native and raster when running with OpenGL.

Mac OS X (PowerBook, Intel Core 2 Duo, 2.4 GHz, 4 GB Ram, NVidia GeForce 8600 GM)

* Native: 9 Fps
* Raster: 30 Fps
* OpenGL: 215 Fps

****************************************************************

https://bugs.kde.org/show_bug.cgi?id=185018 :

KWin does not, and will never work with the raster graphics engine. We
currently have a hack in trunk though that forces KWin to use the native engine
instead.


****************************************************************

Obey-Kun ★★★★★
() автор топика

Этот флаг включает вывод через raster по умолчанию. Включить это для отдельно взятой проги можно и без этого флага, например

konqueror --graphicssystem raster

С растером не работает композитинг в кедах. Хотелось бы ещё опробовать opengl, но он не собирается в gentoo по какой-то причине.

Deleted
()
Ответ на: комментарий от Deleted

Это я понял. А в чём вообще отличие между raster и старым движком, где можно почитать про архитектурные отличия?

Obey-Kun ★★★★★
() автор топика
Ответ на: комментарий от Obey-Kun

> где можно почитать про архитектурные отличия?

Обе фичи (и raster и opengl) пока экспериментальные и толковой документации по ним нет. Всё что удалось найти (кроме ссылок из первого поста), это заметочка в http://doc.trolltech.com/4.5/qpaintengine.html. Так что видимо за подробностями - только в исходники.

Deleted
()
Ответ на: комментарий от iRunix

>> PowerBook, Intel Core 2 Duo, 2.4 GHz, 4 GB Ram, NVidia GeForce 8600 GM

> Бред. Оно зовется macbook pro.


Какая разница как они там продукцию apple называют? У нас вон копиры ксероксами именуют =).

Deleted
()
Ответ на: комментарий от Obey-Kun

Провел я несколько экспериментов... Для raster - на глаз - в dolphin разница очень ощутима, в konqueror - тоже. OpenGL корректно работает только в qt-only приложениях, но там где работает - дает заметную разницу даже по сравнению с raster. Ради эксперимента попробую собрать qt с raster по умолчанию, и поглядим насколько оно стабильно.

Кстати, заметил что шрифты с растром чуть иначе отрисовываются. Это с чем может быть связано?

aix27249
()
Ответ на: комментарий от pashazz

> 4.2

4.2!

[I] x11-libs/qt-gui
Available versions: (4) 4.4.2-r1 (~)4.4.2-r2 (~)4.4.2-r3 (~)4.5.0_rc1-r1
{accessibility cups custom-cxxflags dbus debug glib gtkstyle input_devices_wacom mng nas nis pch qt3support raster tiff xinerama}
Installed versions: 4.5.0_rc1-r1(4)(03:08:48 21.02.2009)(accessibility cups dbus gtkstyle mng pch qt3support tiff xinerama -custom-cxxflags -debug -glib -nas -nis -raster)
Homepage: http://www.qtsoftware.com/
Description: The GUI module for the Qt toolkit

Обратить внимание на наличие сабжевого флага "raster". Релиз 4.5 будет в дереве в течении двух суток, если не возникнет каких-либо серьёзных проблем с ебилдами (которые в оврелее). В принципе релиз не сильно отличается от релиз-кандидата.

Deleted
()
Ответ на: комментарий от v0rbis

> я так понимаю тебе было предъявлено отсутствие релизного 4.5

Топик как бы про растерЪ.

> а чего ты сидишь на рц? а не 4.5.9999


А смысл?

Deleted
()

Запустил свежую Arora с растровым движком - вот это да. Такой скорости я не видел даже у гугл хрома. Всё работает настолько быстро, насколько это вообще возможно. Зря гугловцы выбрали гтк для своего бровсера.

mamay_cozak
()

> Может кто-нибудь про это поподробнее рассказать?

Насколько я понимаю дела обстоят примерно так:

Native - используются системные вызовы для отрисовки (под виндой через GDI/GDI+, а под линуксом через X-ы), частично отрисовка идет средствами видеокарты,

Raster - все рисуется полностью самим Qt в картинку и она блиттится на экран через один системный вызов фактически, максимальная нагрузка на процессор, видеокарта фактически ничего не рисует сама,

OpenGL - для отрисовки используются OpenGL API и большая часть операций делается на видеокарте, по сравнению с Native у Qt здесь полный контроль над ускоренными операциями и их больше переносится на видеокарту.

Под виндой Native работает быстрее или также как и Raster, а вот под линуксом из-за корявости иксов (и тем как они из Qt используются) получается медленее чем Raster. Поэтому под линуксом и наблюдается ускорение при переключении на Raster.

kamre ★★★
()
Ответ на: комментарий от kamre

>из-за корявости иксов

не разбираешься в вопросе - не пиши. а то так можно заявить что ты из за корявости вида под водой не можешь дышать. или еще чего небудь не умеешь, что умеют другие представители вида

black7
()
Ответ на: комментарий от black7

>>из-за корявости иксов

>не разбираешься в вопросе - не пиши.

Ну а разве это не корявость иксов, когда pure software rendering (на клиенте) и пересылка одного изображения работает быстрее чем отрисовка по протоколу на сервере (где должно использоваться hardware acceleration)? Разбираешься в вопросе - напиши, мне правда интересно услышать мнение эксперта.

kamre ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.