Обсуждение:Предотвращение мерцания: различия между версиями
G-XaD (обсуждение | вклад) | G-XaD (обсуждение | вклад) м | ||
Строка 4: | Строка 4: | ||
Описанный алгоритм является классическим для устранения мерцания, но не является двойной буферизацией. Теоретически буфер Draw может и не находиться в видеопамяти. | Описанный алгоритм является классическим для устранения мерцания, но не является двойной буферизацией. Теоретически буфер Draw может и не находиться в видеопамяти. | ||
G-XaD 19:02, 9 июня 2010 (MSD) | G-XaD 19:02, 9 июня 2010 (MSD) | ||
+ | |||
+ | Пример реализации двойной буферизации можно глянуть в libuix, файл gfx.cpp, функция flush при включенной опции FTR_DBUF_MODE_SUPPORT. | ||
+ | |||
+ | G-XaD 19:07, 9 июня 2010 (MSD) |
Версия 15:07, 9 июня 2010
Статья не является достовернойhttp://ru.wikipedia.org/wiki/Двойная_буферизацияВ режиме "двойная буферизация" картинка не проецируется, а подменяется буфер экрана. Тоесть просто дается команда, что на экран нужно выводить из другого буфера, видеопроц при этом ничего не делает. В описанном в статье алгоритме проц занаят копированием из буфера в буфер. Описанный алгоритм является классическим для устранения мерцания, но не является двойной буферизацией. Теоретически буфер Draw может и не находиться в видеопамяти. G-XaD 19:02, 9 июня 2010 (MSD)
Пример реализации двойной буферизации можно глянуть в libuix, файл gfx.cpp, функция flush при включенной опции FTR_DBUF_MODE_SUPPORT.
G-XaD 19:07, 9 июня 2010 (MSD)