Re[10]: GDI+ быстрый вывод
От: Pavel Dvorkin Россия  
Дата: 14.12.10 09:09
Оценка:
Здравствуйте, samius, Вы писали:


PD>>Что-то у меня не получается посмотреть Spy++ окно paint.net. А другого ничего нет. Попробуй.

S>А что ты хочешь увидешь?

Приходит WM_PAINT при движении контура или нет.

S>>>Чем так страшен WM_PAINT, если есть двойной буфер?


PD>>На каждый мышкин чих перерисовывать прямоугольник ?

S>




PD>>Так InvalidateRect + UpdateWindow и приведут к BitBlt, только на 4 линии. Остально-то зачем перерисовывать ?

S>Просто что бы не мудрить.

Хм. Если размер контура будет во весь экран ? Тоже тормозить не будет ? На любой видеокарте ? На машине с процессором 5-7 летней давнсти ? Не уверен.

S>Вот смотри. Сейчас собираю прототип html смотрелки со спецвозможностями (т.е. существующие не устраивают). Для отладки мне удобно выводить некоторую посторонюю информацию о лэйаутинге на то же устройство (координаты мыши, атрибуты узлов, над чьими боксами я тащу мышь, границы боксов, и т.п.).


S>Сделал в лоб WM_PAINT-ом на каждый мышиный чих. Т.е. не блит, а вся отрисовка всех глифов с доп информацией + блит из двойного буфера (от фликов). Ну и что бы ты думал? Все отлично рисуется, правда немного поджирается процессор. Меня это не беспокоит на столько что бы заниматься экономией перерисовки на уровне пикселов. И пока у меня нет отсечения по страницам. Т.е. на каждый мышиный чих рисуется весь документ, хоть и видна лишь его часть.


S>Можешь сказать что из-за таких как я тормозит виндовс, но мое мнение — одиночных блитов бояться не нужно в современных интерактивных приложениях.

S>В более менее сложных и многослойных могут работать и множественные блиты (2 и более буферов).

Ладно, давай не будем еще и здесь флейм на эту тему устраивать.
With best regards
Pavel Dvorkin
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.