WebGL Tarayıcı (Browser) Oyun Geliştirme

Kurulum gerektirmeden tarayıcıdan çalışan Unity WebGL oyunları. Okullar, kampanyalar ve portallar için; 100.000'in üzerinde web oyuncusu.

WebGL Tarayıcı (Browser) Oyun Geliştirme

Tarayıcı Neyi Değiştiriyor

Diğer platformlarda oyunla oyuncu arasına birkaç adım giriyor: mağaza incelemesi, 400 MB’lık indirme, kurulum izni, başlatıcı güncellemesi. Her adımda kitlenin ölçülebilir bir kısmı geride kalıyor.

WebGL bu adımların tamamını ortadan kaldırıyor. Discord mesajındaki bir bağlantı, bir reklam, bir QR kod, okulun eğitim portalı ya da müşterinin sitesindeki gömülü bir alan yeterli oluyor. Oyuncu saniyeler içinde oyunun içine giriyor.

Bunun pratikteki karşılığı şöyle:

Kurumsal dağıtım: Öğretmenler bilgisayarlara yazılım kuramıyor, bilgi işlem onayı da aylar alıyor. Millî Eğitim Bakanlığı için geliştirdiğimiz dijital vatandaşlık oyunu tarayıcıda çalışıyor. Öğretmen bağlantıyı açıyor, sınıf oynamaya başlıyor. Kurum onayı gerekmiyor.

Mağazasız kullanıcı edinimi: Reklamdan, sosyal medyadan ya da bir kampanyadan gelen trafik doğrudan oynanabilir bir oturuma iniyor. İndirme adımında yaşanan kayıp ortadan kalkıyor.

Kısıtlı ortamlara erişim: Kurumsal bilgisayarlar, ortak kullanılan bilgisayarlar, eski donanımlar ve sosyal medya ile cüzdan uygulamalarının içindeki tarayıcılar. Native bir build’in ulaşamadığı bu ortamlara tarayıcı oyunu ulaşıyor.

Kurulumsuz oyunlaştırma: Tarayıcı tabanlı oyunlar bir kampanyayı, dersi ya da tanıtım akışını anında etkileşimli bir deneyime dönüştürüyor. Puan, görev, ilerleme ve ödüller katılımı artırıyor. Kullanıcıdan uygulama kurması istenmiyor. Ayrıntılar için oyunlaştırma sayfamızı inceleyebilirsiniz.

WebGL ile Neler Geliştiriyoruz

Rekabetçi çok oyunculu oyunlar: Gecikmenin belirleyici olduğu gerçek zamanlı tarayıcı oyunları geliştiriyoruz. Astar Strike Online oyunumuz; lobi ve oda sistemi, özelleştirilebilir karakterler ve görev sistemi olan bir çok oyunculu FPS. E-spor seviyesinde determinizm için Photon Quantum kullandık. Gunsbytes ise birden fazla mod ve zorluk kademesi içeriyor; 100.000’in üzerinde oyuncuya ulaştı.

Eğitici oyunlar ve simülasyonlar: Okullar, üniversiteler ve kurumlar için müfredatla uyumlu projeler geliştiriyoruz. Bu alanda tarayıcıdan dağıtım doğrudan bir gereklilik oluyor.

iGaming formatları: Sunucu otoriteli backend üzerinde çalışan slot, masa, kart, crash ve anında kazanç oyunları geliştiriyoruz. Devamı için iGaming oyun geliştirme vaka çalışmamızı inceleyebilirsiniz.

.io ve Casual web oyunları: Web portalları ve gömülü alanlar için kısa oturumlu oyunlar geliştiriyoruz.

Prototipler ve oynanabilir demolar: Bir yayıncının, yatırımcının ya da müşterinin videoyu izlemek yerine doğrudan denemesi gerektiğinde bağlantı en hızlı yol oluyor.

WebGL’in Mühendislik Tarafı

WebGL bir dışa aktarma ayarı gibi görünüyor. Projeler çoğunlukla tam bu noktada zorlanıyor.

İlk yüklenme süresi dönüşümü belirliyor: Bağlantıya tıklamakla oynamaya başlamak arasındaki her megabayt oyuncu kaybettiriyor. Varlık bütçelerini, doku sıkıştırmasını ve Addressables üzerinden akışı en baştan planlıyoruz. Böylece oyun, tamamı inmeden oynanabilir hâle geliyor.

Sıkıştırma sunucu tarafında da yapılandırılıyor: Doğru Content-Encoding başlıkları olmadan sunulan Brotli sıkıştırmalı build’ler ya hata veriyor ya da kat kat büyük bir sürüme düşüyor. Yerelde sorunsuz çalışan bir WebGL build’inin canlıda yavaşlamasının en yaygın nedeni bu. Sunucu yapılandırmasını da biz kuruyoruz.

Bellek tavanını iOS Safari sıkı uyguluyor: Mobil tarayıcılar fazla bellek isteyen sekmeyi kapatıyor. Bu yüzden heap bütçesi, bölüm boyutunu ve varlık akışını belirliyor.

Kullanıcı etkileşimi gereklilikleri: Tarayıcılar; ses başlatma, tam ekrana geçme ve imleç kilidi için kullanıcının bilinçli bir eylemini bekliyor. İmleç kilidine bağlı bir FPS’te bu, oyunun ilk saniyelerinin kurgusunu belirliyor.

GPU, ziyaretçinin elindeki donanım: Beş yaşındaki bir dizüstünün tümleşik ekran kartı ya da okul laboratuvarındaki bir bilgisayar. Sanat yönünü ve shader karmaşıklığını bu alt sınıra göre seçiyoruz.

Bu başlıkların hepsini proje başında ele alıyoruz.

Tarayıcıda Çok Oyunculu

Gerçek zamanlı çok oyunculu, tarayıcı oyunlarının en zorlu tarafı.

Rekabetçi projelerde Photon Quantum kullanıyoruz. Deterministik simülasyonu ve geri sarma modeli, eşit olmayan bağlantılarda istemciler arasında tutarlı bir durum sağlıyor. Daha hafif, oturum tabanlı oyunlarda Photon’un gerçek zamanlı ürünleri genelde yeterli oluyor. Seçimi proje başında beraber yapıyoruz.

Diğer yarısı bütünlük. Tarayıcı istemcisini, devtools açan herkes inceleyebiliyor. Bu yüzden sonuç mantığını hiçbir zaman istemcide tutmuyoruz. Sunucu otoriteli mimari bizde varsayılan.

Mobil Tarayıcılar Ayrı Bir Hedef

Masaüstünde iyi çalışan bir WebGL build’i, mobil web için ayrı bir çalışma gerektiriyor. Dokunmatik kontrolleri tasarlıyoruz. Dikey ve yatay kullanımı ayrı ayrı çözüyoruz. Bellek tavanı daha düşük, ısınma daha erken başlıyor.

Mobil web’i kendi bütçesi olan ayrı bir hedef olarak ele alıyoruz. Proje gerçekten mağazayı gerektirdiğinde native iOS ve Android build’leri aynı Unity kod tabanından çıkıyor.

WebGL’in Uygun Olmadığı Durumlar

Bunu ilk görüşmede net olarak paylaşıyoruz.

Oyununuz 4 GB’lık bir varlık kütüphanesi, ağır fizik simülasyonu, konsol seviyesinde render ya da kırk dakikalık kesintisiz oturum gerektiriyorsa tarayıcı zorlanıyor. Bazı projelerde native bir build ve yanında tarayıcı demosu daha uygun oluyor.

Hangi kategoride olduğunuzu, herhangi bir harcama yapmadan önce iletiyoruz.

Dağıtım Kanalları

Kendi siteniz ya da platformunuz. Poki, CrazyGames veya Y8 gibi gerçek kitlesi ve gelir modeli olan yayıncı portalları. Müşterinin ürününe gömülü kullanım. Bir öğrenme yönetim sisteminin içinde. Ya da bir kampanya, cüzdan uygulaması veya zincir üstü bir proje kapsamında. Native bir uygulamanın mümkün olmadığı yerlerde tarayıcı oyunu çalışıyor.

Her kanalın farklı teknik gereksinimleri oluyor: SDK entegrasyonu, en boy oranları, yüklenme süresi sınırları. Kanalı, build başlamadan önce beraber belirliyoruz.

Sıkça Sorulan Sorular

Tarayıcı oyunu için ne kadar büyük fazla büyük?

Çoğu kişinin sandığından daha az. Belirleyici olan, oynanabilir hâle gelme süresi. Kapsamda bir hedef belirliyor ve ona göre tasarlıyoruz.

Tarayıcı oyunu gelir getirir mi?

Evet. Portallar, reklam, IAP ya da native bir oyunun kullanıcı edinme katmanı olarak gelir getiriyor. Model build’i şekillendirdiği için ilk görüşmede konuşuyoruz.

Mevcut Unity oyunumuzu WebGL’e çevirebilir misiniz?

Çoğu zaman evet. Bu, içinde gerçek iş olan bir port çalışması: yüklenme süresi, bellek, girdi ve ses ayrı ayrı ele alınıyor. Projeyi iletin, açık bir değerlendirmeyle dönüyoruz. SSS ve hakkımızda sayfalarımızı inceleyebilirsiniz.


Projeye Başlayın

Oyunun ne olduğunu ve nerede çalışması gerektiğini iletin. Elinizde bir Unity projesi varsa repo bağlantısı ya da bir build en hızlı başlangıç oluyor.

Kapsamı, ekip yapısını ve sabit fiyatı genelde iki iş günü içinde iletiyoruz. Ulaşmaktan çekinmeyin!