@chenmy1: fps'nin aniden düştüğü partlarda giriş çıkış geçişleri ile fps'yi daha yavaş değiştirmeye çalış. birden 100'den 20'ye düşmek yerine ekranda gösterdiğin şeylerin sayısını yavaş yavaş artırarak gözü düşük fps'ye alıştırmaya çalışabilirsin.
@skate, nightlord: demolarda oyunlardan farklı olarak olacak şeyleri önceden bilme avantajımız var. o yüzden
"konum += gecenZaman * hiz"
yerine
"konum = ilkKonum + (simdikiZaman - ilkZaman) * hiz"
daha makul.
Sebebi ise üzerinde birikimsel olarak işlem yapılan floating bir değerin hata oranının giderek büyümesi. 5 dakikalık bir demoda 60fps'den 18000 adet floating işlem inanılmaz hata farkı yaratmayacaktır ama farklı fps dağılımlarına sahip iki runda ince konum ayarları fark yaratabilir ve poligon intersection sınırlarında bu fark gözle görülebilir hale gelebilir.
Bunun dışında, demo çok düşük fpslerde çalışıyorsa (örneğin 1 fps), iki frame arası süre farkı çok keskin olmayacak ve hata payı çok büyüyecektir. Örneğin Che Guevara/Fairlight'taki eleman yürürken, şapka ve gözleri kafadan faha yükseğe çıkıp ebleh bir görüntü oluşturuyordu bende. Videosunu izleyene kadar bunun isteyerek böyle yapılmış olduğunu sanıyordum.
Hepsi bir kenara, zaman farkından ilerlemek olacak şeyleri önceden bilmediğimiz uygulamalarda (örn. oyun, bilimsel simülasyonlar) kullanmak zorunda kalınan bir yöntem. Animasyonlar için tüm fonksiyonları t cinsinden vermek yapılan işin doğasına daha yakın.