Помощь - Поиск - Пользователи - Календарь
Полная версия: Устранение мерцание
Форум «Всё о Паскале» > Pascal, Object Pascal > Задачи
XaMMaX
Вообщем делал я прогу тут на форуме поворота 3д квадрата теперь я её расширел и всё мирцает что и понятно =) Слышал есть двойная буферация которая это устраняет , но не знаю что она из себя представляет =( Или другие способы! wub.gif
Lapp
Цитата(XaMMaX @ 26.09.2006 18:55) *

Вообщем делал я прогу тут на форуме поворота 3д квадрата теперь я её расширел и всё мирцает что и понятно =) Слышал есть двойная буферация которая это устраняет , но не знаю что она из себя представляет =( Или другие способы! wub.gif

Может, ты имеешь в виду переключение графических страниц?
Рисуешь сначала в неактивную страницу, потом переключаешь страницы, делаешь изменения на неактивной, снова переключаешь..
мисс_граффити
Делфи?
Если да, то:
1)
Код
DoubleBuffered:=true

2) меняешь свойство формы AlphaBlend на true
тоже иногда помогает.
Гость
нет паскаль! можно кусок кода? плиз!
klem4
Цитата
нет паскаль! можно кусок кода? плиз!


Поиск - >
- видео страницы
- SetActivePage
- SetVisualPage
...
XaMMaX
хм интерестно почему не работает =(
Код: (Показать/Скрыть)

Нуждаюсь в помощи =)
volvo
Файл данных где?
XaMMaX
Да совсем забыл вот он =)
volvo
Цитата
интерестно почему не работает =(
Во-первых, потому, что у режима VGAHi 640*480, который наверняка у тебя устанавливается, просто НЕТ нескольких видеостраниц... Так что, придется делать:
{ gd:=detect; }
gd := EGA;
gm := EGAHi;
initgraph(gd,gm,'');

вот так...

Это было первое. Второе: страницы нумеруются не с 1-цы, а с 0. Переделай нумерацию...
XaMMaX
Да это я исправил, но ты случайно не пробовал компилировать? Мерцание становится ещё более заметным =(
volvo
Угу... А знаешь, почему? Потому, что ты неправильно работаешь со страницами. Не там меняешь... Вот мой первоначальный набросок:

Нажмите для просмотра прикрепленного файла
XaMMaX
Да спасибо это уже намного лучше, но уменя по прежнему мерцания =( хоть и не такие ужасные как были может у меня комп такой? volvo, какие твои результаты? Совершенно нет мерцания?
volvo
Почему же нету... Есть немного smile.gif

Я вот хочу попробовать обойтись вообще без переключения страниц, немного перестроив программу. Попробую - отпишусь...
XaMMaX
Буду ооооочень признателен!
XaMMaX
Volvo, расскажи как ты хочеш престроить программу? Теоритически.
volvo
Теоретически - это не ко мне. Я не теоретик. И до тех пор, пока работающий результат не получен я ничего не выкладываю. Пока не получается полностью избавиться от мерцания, как получится (и если получится) - выложу...
XaMMaX
Ну ладно жду =) Ну и если не получится ты всё равно отпишись!
Coder_perm
Я избавился от мерцания рисованием в буфер, тоесть не в видео память, а в свой массив. А потом готовый массив копировал целиком в видео память, без стирания. Этот способ сложен тем, что необходимо писать свои функции рисования полигонов, а не пользоваться стандартным graph.tpu.
XaMMaX
Не nea.gif Это для меня сложно =( Надо чего попроще!
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.