Şu anda fiziğin sunucu tarafında simüle edilmesini istediğim tek oyunculu fizik odaklı bir oyun üzerinde çalışıyorum. Bunun nedeni, oyunun liderlik tablolarına, kalıcı oyuncu ilerlemesine vb. Sahip olacağı ve her türlü hile yapmayı önlemek istediğimden - temelde saf bir istemci-sunucu mimarisi, istemci “aptal” ve sadece sunucunun görüntülemenizi istediklerini görüntüler.
Ancak sorun, oyunun aynı anda yüzlerce (belki de binlerce) kişi tarafından oynanmasıdır. Yüzlerce durumu aynı anda yapmam ve sürdürmem gerekiyorsa büyük olasılıkla sunucu işlem gücünü öldüreceği için bu beni ilgilendiriyor.
Tüm fizik simülasyonlarını müşteri tarafına taşımakta sorun yaşamazdım, ancak o zaman bir müşteri simülasyonunun sonucu geçerliyse doğrulamanın bir yoluna ihtiyacım olacaktı. Ancak, nasıl olduğunu anlayamıyorum.
İstemcinin hala adil olup olmadığını doğrulamak için simülasyon sunucusunu yan yana çalıştırmayı düşündüm, ancak sunucunun mümkün olduğunca daha az zorlanma olmasını istiyorum.
Fizik Glenn Fiedler'in GDC 2011 demosu kadar karmaşık hale gelecek , belki daha da basit olacak. Bununla birlikte, her zaman çok daha fazla çarpışan katı cisimler tek bir sahnede olacak ve hepsi aynı anda görünecek.
Web'deki çoğu kaynak - yine de büyük bir alan olan Glenn Fiedlers sitesi - küçük ölçekli ağ fiziği hakkında konuştuğundan (örneğin Halo gibi 30 oyunculu bir FPS) bu özel duruma cevap vermekte zorlanıyorum.
Konuyla ilgili herhangi bir tavsiye, web sitesi, makale veya benzeri çok takdir edilecektir.
Cevaplamak istediğim soruların bir özeti:
- Bir istemci-sunucu modeli ne kadar uygulanabilir? Sunucu işlem gücü kaygım yasal ve topraklı mı?
- İstemci tarafından sunucuda çalıştırılan bir fizik simülasyonunu güvenilir bir şekilde doğrulamak mümkün müdür? Öyleyse nasıl?