Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Флипинг и блитинг [D7, Win95/98, Win2k, WinXP]


Страницы:   1 2

parovoZZ ©   (2004-08-03 11:55:00) 

С флипом всё понятно, копируем буферную поверхность на первичную с максимальной частотой. А вот по поводу блитинга: как часто надо копировать поверхности на буферную - когда что-то на ней изменилось (копировать всю поверхность или только изменившуюся часть?), или также с максимально быстрой частотой? И почему на одной машине поверхность надо восстанавливать, даже если фокус у окна не терялся, а на другой всё как и долджно быть?


cyborg   (2004-08-04 22:11:00) [21]

Нет, нужно отсечение делать.


parovoZZ   (2004-08-04 21:29:00) [22]

И ещё вопрос вдогонку. Если я блитингую с установленным цветовым ключом и у меня прозрачная область выходит за границы поверхности, то блитинг осуществится или нет?


parovoZZ   (2004-08-04 10:11:00) [23]

Ясно, спасибо.


cyborg   (2004-08-04 06:53:00) [24]

Если экран постоянно обновляется, то всю графику рисую на бэкбуфере, Если чего-то редко обновляется, нарисуй на отдельной поверхности и выводи на быкбуфер эту поверхность.


parovoZZ   (2004-08-03 22:11:00) [25]

Запутался в словах. Делаем эффекты на какой-либо поверхности (не буферной), затем переносим её на буферную. ИЛИ. Сразу делаем эффекты на буферной. Буферная - та, которая работает в купе с первичной.


cyborg   (2004-08-03 21:11:00) [26]


> [8] parovoZZ ©   (03.08.04 21:04)

не понятно чего там тебе нужно на неё сразу блитинговать для эффектов. Если прозрачность только, или свет делать.


parovoZZ   (2004-08-03 21:04:00) [27]

Я так понял, что к любой? Но тогда на буферную поверхность надо блитинговать, а так сразу на неё. Или побыстрее будет (всё равно ж блитинговать придётся)? Для эффектов надо.


cyborg   (2004-08-03 20:33:00) [28]


> [6] parovoZZ ©   (03.08.04 20:22)

Не только, к остальным имеет смысл.


parovoZZ   (2004-08-03 20:22:00) [29]

Может не по сабжу: непосредственный доступ к пикселям надо производить только к буферной поверхности, а к остальным, наверное , не имеет смысла?


cyborg   (2004-08-03 16:22:00) [30]

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


parovoZZ   (2004-08-03 15:55:00) [31]

Не, вопрос не в этом. ХХХ_WAIT я так понимаю, это указание функции ждать готовности устройства. Вопрос в чём: на момент ожидания окно приостанавливает обработку поступающих сообщений или нет? Допустим, есть два монитора с частотами 60 и 120 Гц. С какой скоростью будет идти игра на этих мониторах?


cyborg   (2004-08-03 15:45:00) [32]


>  что происходит с выполнением программного кода - ожидаем
> завершения оного или задачи разделяются

Это зависит от использования флагов ХХХ_WAIT или XXX_DONOTWAIT при флипинге и блиттинге, по названию флага можно догадаться какой к чему.


parovoZZ   (2004-08-03 14:43:00) [33]

Ну хорошо, а тогда ещё вопрос: если ждём вертикальной синхронизации при флипинге, что происходит с выполнением программного кода - ожидаем завершения оного или задачи разделяются (то бишь центральный процессор выполняет дальнейшие инструкции, а видеокарта выполняет флипинг)?
P.S. Всё же книга без теории не даёт полного понимания некоторых вещей.


cyborg   (2004-08-03 11:58:00) [34]

Флипинг - смена буферов (переключение) или копирование, в зависимости от режима. А блитинг это копирование одной поверхности на другую. А как часто это делать, зависит от твоей игры.

Поверхности нужно восстанавливать когда их затирают другие программы, какая-то программа использовала видеопамять, в этой части видеопамяти твои поверхности затёрлись, приходится восстанавливать.


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо