Son zamanlarda oyunumla bazı kare hızında titreme sorunları ile uğraşıyorum ve en iyi çözüm, Glenn Fiedler (Gaffer on Games) tarafından klasik Fix Your Timestep'te önerilen çözüm olacak gibi görünüyor ! makale.
Şimdi - Güncellemem için zaten sabit bir zaman adımı kullanıyorum. Sorun, oluşturma için önerilen enterpolasyonu yapmıyorum. Sonuç olarak, oluşturma oranım güncelleme hızımla eşleşmiyorsa kareleri iki katına çıkarmam veya atlamam. Bunlar görsel olarak fark edilebilir.
Bu yüzden oyunuma enterpolasyon eklemek istiyorum - ve başkalarının bunu desteklemek için verilerini ve kodlarını nasıl yapılandırdığını bilmek istiyorum.
Açıkçası, oluşturucumla ilgili oyun durumu bilgilerinin iki kopyasını (nerede? / Nasıl?) Saklamam gerekecek, böylece aralarında enterpolasyon yapabilir.
Ayrıca - bu iş parçacığı eklemek için iyi bir yer gibi görünüyor. Bir güncelleme iş parçacığının oyun durumunun üçüncü bir kopyasında çalışabileceğini ve diğer iki kopyayı render iş parçacığı için salt okunur olarak bırakabileceğini hayal ediyorum . (Bu iyi bir fikir mi?)
- O oyunun devletin iki veya üç sürümlerine sahip performansını tanıtmak ve olabilir gibi görünüyor çok daha önemlisi - güvenilirlik ve geliştirici verimlilik problemlerini, sadece tek bir versiyonunu sahip kıyasla. Bu yüzden özellikle bu sorunları azaltmaya yönelik yöntemlerle ilgileniyorum.
Özellikle not, oyun durumuna nesne ekleme ve çıkarma işlemlerinin nasıl yapılacağı sorunudur.
Son olarak, bazı durumların oluşturma için doğrudan gerekli olmadığı veya farklı sürümlerini izlemek için çok zor olacağı görülüyor (örneğin: tek bir durumu depolayan bir üçüncü taraf fizik motoru) - bu yüzden nasıl olduğunu bilmek isterim insanlar böyle bir sistem içinde bu tür verileri ele almışlardır.