Oyun döngüsü (game loop) nedir? Sabit ve değişken zaman adımı arasındaki fark nedir?
Cevap
Oyun döngüsü, oyun çalıştığı sürece tekrar eden ana döngüdür: girdileri oku → oyun durumunu güncelle → ekrana çiz.
- Değişken zaman adımı: her karede geçen süre (delta time) kadar güncelleme yapılır. Basittir ama fizik, kare hızına göre farklı sonuç verebilir.
- Sabit zaman adımı: simülasyon her zaman aynı aralıkla (ör. 1/60 sn) ilerler; biriken süre bir akümülatörde tutulur. Fizik deterministik ve kararlı olur.
double birikmis = 0.0;
const double ADIM = 1.0 / 60.0;
while (calisiyor) {
birikmis += gecenSure();
girdileriIsle();
while (birikmis >= ADIM) {
guncelle(ADIM);
birikmis -= ADIM;
}
ciz(birikmis / ADIM); // iki durum arasında interpolasyon
}İlgili Oyun Programlama soruları
Bu konuda başka bir soru biliyor musun?
Mülakatta karşılaştığın soruları ekle, onaylandıktan sonra yayına alınsın.