Yanıtlar:
Yani, Wikipedia'nın id Tech 3'teki makalesine bakarak başlamalısınız . Bu, Brian Hook'un GDC konuşma özeti ve Element 61 blogundaki bazı eski şeyler ile artırılabilir . Buna ek olarak, neler olup bittiğini yeniden yapılandırmak için bulabileceğiniz eski mod eğiticilerinden oluşan bir grupla dolaşmak zorunda kalacaksınız.
Neler olup bittiğini (girişin motor içinde nasıl ele alındığı ve yönlendirildiği, ne tür bir temel olay) yapı kullanılır vb.).
Bununla çalışırken bana yardımcı olan bazı önemli noktalar:
quake3.exe +set sv_pure 0 +set vm_game 0 +set vm_cgame 0 +set vm_ui 0
, motorun VM kodu yerine yerel kodu çalıştırmasına izin vermek için oyunu çalıştırmanız gerekir .Bir iş arkadaşınızla bunun için yaptığım bazı düzgün şeyler:
Şahsen, motorun gerçekten aptalca yollarla yapılan gerçekten akıllı şeylerin, gerçekten akıllı yollarla yapılan gerçekten aptalca şeylerin ve gerçekten akıllı yollarla yapılan gerçekten akıllı şeylerin harika bir kombinasyonu olduğunu buldum. Orta ölçekli bir C projesinde modülerliğe ve iyi yapılandırılmış tasarıma sahip olmanın harika bir örneği.
Son olarak, grok yapmak biraz zaman alırsa kendini kötü hissetme. Motorda aradığımı nereden bulabileceğimi gerçekten bilmek bir ayımı aldı; eğer her şey başarısız olursa, uygulama başlangıcından başlayın ve sadece fonksiyonlar için tünel açın, yorumları kendiniz için tabela olarak bırakın. Monitörüm fonksiyon adları, satır numaraları ve yaptıklarıyla ilgili kısa açıklamalarla pembe post-it notlarla kaplandı.
Quake III Arena'da Mod Programlamaya Odaklan kitabı , istemci ve sunucu mantığının nasıl ayrıldığını, istemci tahminini, istemci tarafı grafik efektlerini vb. Anlamanıza yardımcı olacaktır.
Kesinlikle.
http://en.wikipedia.org/wiki/Quake_engine , orada ne olduğuna dair iyi bir genel bakış, ancak alıntılarıyla mimarisinin ayrıntılarına hızla girebilirsiniz.
Ayrıca aradığınız şeyle daha uyumlu olabilecek oyun motoru mimarisi üzerine birkaç kitap önerebilir miyim. Quake'e özgü olmasa da, motor tasarımının ayrıntılarına girerler ve Quake motorlarının birçok yönüne paralel çalışırlar: