Здравствуйте, гость ( Вход | Регистрация )
|
Rocky |
5.2.2010, 0:19
Сообщение
#1
|
|
Старейший участник ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 530 Регистрация: 22.12.2008 Из: Санкт-Петербург Пользователь №: 463 Спасибо сказали: 22 раз(а) Репутация: 7
|
Еще раз всем привет... Вот столкнулся с очередной проблемкой... Есть такой кусок кода
И все. В винде все летает.... скомпилил в линуксе - загрузка цп под 80%. Тормоза просто дикие. Почему так может быть? 2 часа пытался понять что за фигня. У меня KDE со всеми наворотами, compiz все летает просто.. а тут простенькая программа одной функцией по сути убивает все..... Как лучше всего фон программе задать? Единственное что в голову приходит это запихнуть в ремурсы... Утром проверю поможет ли это или нет... Но непонятно почему так тормозит программа из-за этого? _Back.jpg размером 1280х1024.... Весит 300 КБ.... |
|
|
|
![]() |
|
BRE |
5.2.2010, 8:23
Сообщение
#2
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: 44
|
Одна из причин тормозов может быть в том, что не все драйвера сейчас могут ускорять 2D аппаратно.
Вообще, ты выполняешь рисование не оптимально. В событии QPaintEvent, передается регион (область), которую нужно обновить. Вместо этого ты обновляешь все окно. Картинка размером 1280х1024x4 = 5 242 880 байт. При постоянной перерисовке происходит прокачка 5 Мб данных только для фона (без аппаратного ускорения это тяжело). Т.е. вместо перерисовки небольшой области, которая изменилась, ты постоянно перерисовываешь всю сцену. |
|
|
|
Rocky жуткие тормоза при отрисовке фона программы (drawImage) 5.2.2010, 0:19
Litkevich Yuriy Цитата(Rocky @ 5.2.2010, 3:19) Единственн... 5.2.2010, 0:27
Rocky Сделал вот так:
this->setStyleSheet(QStrin... 5.2.2010, 0:43
Rocky А как узнать какая область изменилась? QPaintEvent... 5.2.2010, 9:12
BRE Цитата(Rocky @ 5.2.2010, 9:12) А как узна... 5.2.2010, 10:30
Rocky Цитата(BRE @ 5.2.2010, 10:30) А если попр... 5.2.2010, 17:50
Rocky Вобщем я все понял.. дело было в реалтзации той от... 6.2.2010, 2:40
BRE Заводим буфер для фонового изображения. Его размер... 6.2.2010, 8:46![]() ![]() ![]() |
|
Текстовая версия | Сейчас: 11.12.2025, 6:05 |