Введение в программирование трехмерных игр с DX9

       

Рисунок Цепочка обмена из двух поверхностей (первичного и вторичного буфера)



Рисунок  1.4. Цепочка обмена из двух поверхностей (первичного и вторичного буфера)

<
На Рисунок  1.4 в первичном буфере ( front buffer) находится та поверхность, которая в данный момент отображается на экране монитора. Монитор не показывает изображение находящееся в первичном буфере мгновенно; например, при установленной для монитора частоте кадров 60 Гц, вывод изображения занимает одну шестидесятую секунды. Частота кадров в приложении часто отличается от частоты кадров монитора (например, приложение может визуализировать кадр быстрее, чем монитор отобразит его). Мы не хотим обновлять содержимое первичного буфера, занося в него следующий кадр, в то время, когда монитор еще не закончил отображать текущий, но мы также не хотим останавливать визуализацию кадров, чтобы подождать, пока монитор полностью выведет текущий кадр. Поэтому мы визуализируем кадр во внеэкранной поверхности (вторичном буфере, back buffer); затем, когда монитор закончит отображение поверхности из первичного буфера, мы перемещаем этот буфер в конец цепочки обмена, и передвигаем в цепочке вторичный буфер, чтобы он стал первичным.

Этот процесс называется показом (presenting). На Рисунок  1.5 показана цепочка обмена до и после показа.




Содержание раздела