Board.KolibriOS.org
http://board.kolibrios.org/

Cairo
http://board.kolibrios.org/viewtopic.php?f=24&t=1674
Страница 3 из 3

Автор:  Serge [ Вс фев 26, 2012 6:52 pm ]
Заголовок сообщения:  Re: Cairo

Mario
Надо душить жабу :) .
Фоновому изображению с иконками фиолетово или почти фиолетово наличие shadowfb, хотя он упрощает многие вещи. Например проще задействовать MMX потому что читаем shadowfb а не тормозную видеопамять. Или рамка при перетаскивании окна. Вместо xor с чтением видеопамяти рисуем паттерн, а востанавливаем из буфера.
Идея ICON сводится к следующему. Из ядра убирается код отрисовки фоновой картинки и объединяется с ICON. Само приложение создаёт только один поток и не требует собственного окна. ICON рисует в десктоп (slot 1) а для проверки кликов использует функцию, которая возвращает слот окна по координатам x,y. Соответственно если это 1, значит клик был на десктопе.

Автор:  Mario [ Вс фев 26, 2012 7:57 pm ]
Заголовок сообщения:  Re: Cairo

А как тогда с выставлением картинки для фона. Как этот механизм работать будет в случае когда только ICON будет монопольно распоряжаться отрисовкой картинки. И вообще получается будет жрать память равную текущему режиму LFB. Расточительно, ужас! А еще господа любители крутящихся иконок будут выть - хотя всем остальным на них... кхм.

Автор:  Serge [ Вс фев 26, 2012 8:32 pm ]
Заголовок сообщения:  Re: Cairo

Mario
Выставлять картинку через расшареную память.

Автор:  art_zh [ Вт окт 09, 2012 11:11 pm ]
Заголовок сообщения:  Re: Cairo

Serge писал(а):
Поскольку тема блиттера (ф.73) в основном обсуждалась в этой теме, то здесь и отпишусь.
... Если есть вопросы, замечания и предложения пишите.

Чего-то мне в последнее время эта твоя идея с блиттером всё больше начинает нравиться.

Приходится признать, что системные вызовы действительно сильно тормозят GUI.
И syscallы, и запредельная оптимизация кода проблемы не решают: скорость увеличивается в лучшем случае на десятки процентов, а надо - в разы...

Может, имеет смысл довести блиттер до полноценного "теневого" видеобуфера, куда приложение могло бы рисовать с помощью расшаренных GUI-библиотек, а ядро бы вызывалось только для окончательной отрисовки окна?

Автор:  Serge [ Ср окт 10, 2012 10:27 am ]
Заголовок сообщения:  Re: Cairo

art_zh
Со временем. Здесь надо ещё видеодрайвер подключать.
У меня есть идея забрать у приложений прямой доступ к видеопамяти по LFB_BASE и разместить там буфер окна. Но тут есть разные варианты.
1. буфер представляет всё окно - клиентскую часть и обрамление.
2. буфер представляет только клиентскую часть, а обрамление рисуется в собственные буферы.

Для каждого варианта есть свои резоны. Первый позволяет вывести всё окно за один вызов блиттера.
Второй упрощает вывод видео если драйвер умеет масштабировать текстуры.

Автор:  0CodErr [ Пт ноя 11, 2016 12:28 pm ]
Заголовок сообщения:  Re: Cairo

Serge, а ты вот говорил там viewtopic.php?f=24&t=1674#p31993 что SysFn65 не работает. А что конкретно не работало? Просто у меня и раньше и сейчас всё прекрасно работало и работает.
В ebp не stride, а padding. Например, если padding отсутствует, то ebp = 0.

Автор:  Serge [ Сб ноя 12, 2016 12:49 pm ]
Заголовок сообщения:  Re: Cairo

0CodErr
Точно уже не помню, но были проблемы.

Страница 3 из 3 Часовой пояс: UTC+03:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/