GAP GAME ARCHIVE PROJECT

Quake Engine (1996)

Tam Üç Boyutlu Poligon Devrimi, GLQuake ve İstemci Taraflı Ağ Tahmini

United States · 1996 · engine

Haziran 1996'da John Carmack ve Michael Abrash tarafından id Software için geliştirilen Quake Engine; 2.5D hilelerini tarihe gömerek tüm dünyayı, karakterleri ve ışıklandırmayı gerçek üç boyutlu poligonlarla hesaplayan tarihin ilk tam 3D oyun motorudur. Işık haritaları (lightmaps), doku önbellekleme, GLQuake ile donanımsal 3D hızlandırıcı desteği ve 'QuakeWorld' ile icat edilen 'istemci taraflı tahmin' (client-side prediction) ağ kodu sayesinde modern çevrimiçi çok oyunculu oyunculuğun teknik temelini atmıştır.

Quake Engine (1996)

Gerçek 3D Poligonlar ve Michael Abrash'ın Montaj Optimizasyonu

Doom ve Duke 3D düz duvarlar ve 2D spritelar kullanırken, Quake her nesneyi, yaratığı ve silahı gerçek 3D üçgen poligonlarla çizdi. Michael Abrash, Intel Pentium işlemcisinin boru hattını (pipeline) milisaniyelik hassasiyetle kullanarak montaj dilinde eşzamanlı tamsayı ve kayan nokta döngüleri yazdı. Carmack'in statik yüzey aydınlatması için geliştirdiği ışık haritası (lightmap) tekniği, meşalelerin yaydığı sıcak gölgeleri fotogerçekçi bir derinlikle odaya yaydı. Motorun render boru hattı (pipeline) ve bellek yönetimi mimarisi, geleneksel yazılım yaklaşımlarını kökten yıktı. Veri akışı (Baş Sistem Mimarları: John Carmack, Michael Abrash, John Cash, Geliştirici: id Software, Çıkış Tarihi: 22 Haziran 1996 (GLQuake: Ocak 1997), Kilit İnovasyonlar: Tam 3D Poligon Rasterizasyonu, Statik Işık Haritaları (Lightmaps), QuakeWorld İstemci Tahmini) gerçek zamanlı geometri işleme ve dinamik arabellek optimizasyonlarıyla donatılmıştı. Çoklu işlemci katmanlarında poligon verilerini verimli şekilde hesaplayan matematiksel algoritmalar, sahnelerdeki çizim gecikmelerini sıfıra indirerek sektörde yeni bir teknik performans çıtası belirledi.

QuakeWorld ve İstemci Taraflı Tahmin (Client-Side Prediction)

1996 yılındaki çevirmeli (dial-up) 28.8k modem bağlantılarında yaşanan 200-300 milisaniyelik yüksek gecikmeyi (ping) çözmek isteyen Carmack, 'QuakeWorld' güncellemesini yazdı. 'İstemci taraflı tahmin' (client-side prediction) algoritması sayesinde sunucudan yanıt beklenmeden oyuncunun bastığı tuş ekranda anında gerçekleşiyor, sunucu geriden senkronize ediliyordu. Bu buluş, çevrimiçi rekabetçi FPS türünü oynanabilir hale getiren modern internet ağ kodunun doğum anı oldu. Endüstriyel etkisi açısından bakıldığında, lisanslama modelleri ve modifikasyon (modding) desteği sayesinde küresel bir geliştirici ekosistemi filizlendi. Teknik ekiplerin geliştirdiği araç kitleri ve seviye editörleri, oyun tasarımını kod tabanından ayırarak yaratıcı tasarımcıların özgürce içerik üretmesini sağladı. Bu paradigma değişimi, modern oyun stüdyolarının üretim hattı standartlarını kalıcı olarak şekillendirdi.

Verification Sources