Oyunlardaki Mermi Sistemleri Nasıl Çalışıyor?
FPS yani birinci şahıs nişancı oyunları, 1992 yılında çıkan Wolfenstein 3D ile birlikte büyük bir patlama yaşadı ve o günden sonra yoluna giderek …
FPS yani birinci şahıs nişancı oyunları, 1992 yılında çıkan Wolfenstein 3D ile birlikte büyük bir patlama yaşadı ve o günden sonra yoluna giderek daha popülerleşerek devam etti. FPS oyunlarının grafikleri arttı, bütçeleri yükseldi ve e spor alanına dâhil oldular.
Fakat tüm bu oyunların merkezinde yer alan bir düzenek var: ateş etme sistemleri. Pekala, bu sistem nasıl gelişti? Nasıl kimi oyunlar gerçek bir silahla ateş ediyormuş hissiyatı yaratmayı başarırken öbürleri bunu başaramadı?
Hitscan
Birinci oyunlarda “raycasting” ismi verilen bir sistem kullanılıyordu. 2B görselleri 3B’de işleyen bu sistem, ışınla kesişen birinci objenin tespit edilmesini sağlıyordu. Daha sonra geliştiriciler “Bir silahın ağzından çıkan ışınlar, bir mermiyi taklit etse nasıl olurdu?” sorusunu sordu ve Hitscan doğdu.
Fizik motorları, Hitscan silahlarının uygulamasında oyuncular ateş ettiği vakit genelde; silahın doğrulduğu noktayı çözüyor, silahın ağzından çıkan ışını tanımlanan menzile yönlendiriyor ve ışının belirlenen nesneyi vurup vurmadığını tespit etmek için raycasting’i kullanıyor.
Şayet motor, ateş çizgisindeki bir objeyi tespit ederse mermiyle vurulduğunu söyleyen bir bildiriyle bildirim gönderiyor. Daha sonra gaye, darbenin dışa vurumu için gerekli olan tüm hesaplamaları yapabiliyor.
Hitscan aslında hayli kolay olsa da farklı birçok halde uygulanabiliyor:
- Işın, vurduğu birinci objeden sonra hareket etmeye devam ederse o çizgideki öbür nesnelere de hasar verebiliyor. Tıpkı Quake’teki railgun üzere.
- Azamî menzil ortadan kaldırılarak mermi bir amacı vurana kadar yoluna devam edebiliyor.
- Muhakkak yüzeyler, mermilerin sekmesi için yansıtıcı olacak biçimde ayarlanabiliyor.
Hitscan’in çok süratli olması üzere birçok avantajı bulunuyor ve bu sebeple birçok oyun bu sistemi kullanıyor ki Wolfenstein 3D ve Doom bunun en bilinen örneklerinden. Fakat bu sistem, yalnızca eski oyunlarda kullanılmıyor. Bugün dahi Overwatch’tan birçok karakterin Hitscan silahı bulunuyor. Hatta Call of Duty’deki birçok silah da Hitscan uygulamasıyla çalışıyor.
Tüm bunlardan sonra neden bütün oyunlar bu sistemi kullanmıyor o vakit diye düşünebilirsiniz. Fakat okurken de fark etmiş olabileceğiniz üzere ışınlar, sonsuz bir hareket suratına sahip. Hasebiyle amaçlarına direkt olarak ulaşabiliyor. Ateş ettiğinizde, merminin yol kat etme mühleti bulunmuyor ve hasebiyle maksattaki bir kişinin, hayli uzakta olmasına karşın mermilerden kaçması imkânsız hale geliyor.
Bu mekaniğin tüm oyunlarda kullanılmamasının bir öteki sebebiyse birçok Hitscan uygulamasının direkt ışınları kullanıyor olması. Yani ateş edilen mermiler, yerçekimi ve rüzgâr üzere dış etkenlerden etkilenmiyor. Bu da maksadı gerçekçi bir oynanış olan oyun yapımcılarının tercih etmek isteyeceği bir şey değil.
Mermi balistiği
Mermi balistiği, gerçekliğin asıl amaç olarak alındığı oyunlarda direkt olarak öne çıkıyor. Her mermi, tekil olarak muhakkak hesaplamalara tabi tutuluyor. Rüzgâr, kırılma, yerçekimi, sıcaklık üzere mermi üzerinde tesiri olan tüm faktörler oyun içerisinde bulunuyor. Bu sistem sayesinde, fizik değiştirilebiliyor ve oyuncular daha farklı silahlar kullanabiliyor.
Bu sistem sayesinde Max Payne, Sniper Seçkine ve Superhot üzere oyunlardaki “bullet-time” uygulanabilir hale geldi. Merminin kat etttiği mesafe sayesinde gaye almak kritik bir hal aldı. Doğal bu hesaplamalarla birlikte proses de Hitscan’e nazaran daha güçlü oldu. Sunucuların üstüne daha çok yük bindi.
Bu hesaplama süreçlerini kimi metotlarla hafifletmek ve bellek kullanımını azaltmak mümkün. Bu metotlardan bir adedinde, oyundan evvel obje havuzu yükleniyor ve gereksinim olduğu anda bunlar aktifleştiriliyor. Mermi yüzeye çarptığında mermi animasyonu oynatılıyor ve mermi devre dışı bırakılıyor. Alışılmış bu hesaplamalar için farklı yollar de kullanılabiliyor.
Tüm bunları anlattıktan sonra birçoğunuz bu metodun, nispeten daha yeni bir formül olduğunu düşünebilir fakat bu usul, Hitscan’den öncesinde de vardı. FPS oyunlarından evvel de Asteroids, Space Invaders ve Galaxian üzere nişancı oyunları bulunuyordu ve bu oyunlar, çok daha ilkel olsa da mermi balistiğini kullanıyordu.
Hibrit sistemler
Mermi atış sistemini çok daha gerçekçi yapmak aslında bu sistemlerin karışımıyla mümkün hale geliyor. Birçok oyun motoru, her iki sistemi de kullanabiliyor. Olağan doğal olarak bu da oyunlarda çok fazla silah çeşitliliğinin olmasını sağlıyor.
Geliştiriciler, her iki sistemin de zayıflıklarını kapatmak için bu iki sistemi karıştırabiliyor ve böylelikle daha gerçekçi bir oyun tecrübesi ortaya çıkıyor. Ayrıyeten bu iki özellik tek bir oyunda da harmanlanabiliyor. Sniper Seçkine serisi de bu kullanım için olağanüstü bir örnek.
Günümüzde kullanılan mermi balistiği ve mekaniği şu an için bunlarla sonlu durumda lakin bu durumun gelecekte daha farklı şekilleneceğini söyleyebiliriz. Geliştirilecek yeni metotlar, artan CPU gücüyle oyunlardaki mermi kullanımlarını daha da gerçekçi bir hale getirecek. Biz de bu sayede daha gerçekçi savaş alanlarında sanal olarak bulunabileceğinz.