A-tit indd


Двойной буфер (Double Buffer) —  Паттерны программирования игр



Download 3,35 Mb.
Pdf ko'rish
bet108/313
Sana05.06.2022
Hajmi3,35 Mb.
#638392
1   ...   104   105   106   107   108   109   110   111   ...   313
Bog'liq
Nistrem R. Patterni programmirovaniya igr-1

146
Двойной буфер (Double Buffer) — 
Паттерны программирования игр
А старый буфер сейчас доступен для записи. Мы на-
чинаем отрисовывать следующий кадр в нем. Вуаля!
Паттерн
Буферизированный класс
инкапсулирует 
буфер
: часть 
состояния, которую можно изменять. Буфер редактиру-
ется постепенно, но мы хотим, чтобы за пределами этой 
части кода изменения выглядели как единое атомарное 
действие. Чтобы это реализовать, класс содержит 
две
сущности: 
следующий буфер
и 
текущий
.
Когда информация считывается 
из
буфера, всегда 
используется 
текущий
. Когда она туда записывается —
следующий
. Когда изменения закончены, операция 
пе-
реключения (swap)
меняет текущий и следующий 
буферы местами, так что новый буфер становится пуб-
лично доступным. Старый текущий буфер теперь мож-
но использовать в качестве следующего нового буфера.
Когда использовать
Хорошо, что этот паттерн — один из тех, про которые 
точно понятно, нужно ли их использовать. Необходи-
мость двойной буферизации обычно заметна визуаль-
но (разрыв или нечто подобное) или по некорректно-
му поведению системы. Но «точно понять, нужно ли их 
использовать» — весьма расплывчатая формулировка. 
Конкретнее паттерн подходит для ситуаций, где выпол-
няются следующие условия.
• У вас есть некоторое состояние, которое изменяется 
пошагово.
• К этому состоянию можно обратиться в период про-
исходящих изменений.
• Мы не хотим, чтобы к нему обращались в период 
происходящих изменений.
• Мы хотим иметь возможность считывать состоя-
ние, и мы не хотим ждать завершения изменений.



Download 3,35 Mb.

Do'stlaringiz bilan baham:
1   ...   104   105   106   107   108   109   110   111   ...   313




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish