Как устранить мигание
Ворос по графике. ПРи анимации заколебало мигание экрана. Как устранить? Где-то читал про то, что нужно ждать ход обратного луча, но енто не прёт. ??????
Цитата:
Originally posted by lexalex
Здрасте!
Ворос по графике. ПРи анимации заколебало мигание экрана.
Здрасте!
Ворос по графике. ПРи анимации заколебало мигание экрана.
А что за графика? Под DOS? Какие модули используются?
Цитата:
Originally posted by smartsoft
А что за графика? Под DOS? Какие модули используются?
А что за графика? Под DOS? Какие модули используются?
Да в прынципе мне бы уневерсальный способ!
Но вообще то Vesa(640x460x256) под DOS
Скажите хоть, как устранить его в стандартном режиме паскаля с 16 цветами ( мне бы сам смысл понять)
Перерисовка кадра занимает очень много времени и все это видит пользователь, отсюда и мигание. Для устранения этого эффекта применяется буферизация экрана. Суть следуюшая. Изображение на экране формируется на основе данных хранящихся в блоке памяти, связанным с экраном. А что нам мешает создать два блока(кроме нехватки памяти:)? Пока один отображается на экране, мы рисуем на другом:).Закончили рисовать (произносим волшебные слова АбрА-кАдАбрА:),меняем местами блоки(присвоение указателю адреса штука быстрая). В итоге пользователь ничего не успевает заметить, что и требовалось осуществить. Тебе просто остается использовать две процедурки SetVisualPage(Page:Word) и SetActivePage(Page:Word) где надо. Надеюсь поможет.