top of page

HUD tarayıcıda birden ters durunca 🙃

Yazarın fotoğrafı: Marcel Dütscher
Marcel Dütscher
15 saat önce
3 dakikada okunur

7 Kasım 2026


2026.10.10 sürümüyle kaputun altında iki büyük adım attık: oyun artık Unity 6.6 üzerinde çalışıyor ve tarayıcı sürümü, tarayıcının sunduğu her yerde, örneğin güncel Chrome ve Edge'de, WebGPU ile başlıyor. Aksi halde eskisi gibi WebGL 2 üzerinde çalışıyor. İkisi de bir web sitesinin ekran kartıyla konuşma yolları. WebGL uzun yıllardır var, WebGPU onun halefi ve bugünün ekran kartlarının çalışma biçimine daha yakın. Kısa süre sonra benim HUD'um ters durdu. 🙃


Bir kez görüldü, sonra bir daha hiç. Oyunu dizüstü bilgisayarımda Chrome'da açmıştım ve HUD baş aşağıydı. Yeniden üretmeyi denedik, olmadı. Ben de bir daha görmedim. Biz de şimdilik konuyu kapattık.


Sonra geri geldi, üstelik fotoğraflı kanıtla. 19 Ekim'de yeni bir dünyada yine oldu. Bu sefer hemen ekran görüntülü bir hata raporu gönderdim. Ama ekran görüntüsünün kendisi bozuktu: yan yana üç kopya, çizgi çizgi. Arkasındaki dedektiflik şöyle: bir resim piksellerden oluşur ve her pikselin normalde kırmızı, yeşil ve mavi için üç değeri vardır. Oyun piksel başına üç değer bekliyordu, ama WebGPU dört değer verdi; fazladan olan şeffaflık içindi. Aynı veriyi piksel başına dört değerle okuyunca resim okunur hale geliyor. Dünya dik duruyor ama tüm HUD aynalanmış: hızlı erişim çubuğu tepeye yapışmış, VEGA'nın “Sana temel şeyleri göstereyim mi?” sorusu baş aşağı. Bu arada, WebGPU'ya geçişten beri tarayıcıdaki her ekran görüntüsünün bozuk olduğu ortaya çıktı. Kimse fark etmemişti, çünkü o zamana kadar tarayıcıdan hiçbir rapor ekran görüntüsüyle gelmemişti. 🔍


Neden sadece HUD? “Orta” grafik seviyesinden itibaren, vizör efekti açıkken ayrı bir kamera HUD'u grafik belleğindeki kendi resmine çiziyor. Uzmanlar buna render texture diyor. Oyun sonra bu resmi vizör efekti ve parıltısıyla dünyanın üstüne seriyor. Zor kısım şu: grafik sistemleri böyle bir resimde “yukarı”nın nerede olduğu konusunda anlaşamıyor. Bazıları satırları yukarıdan, bazıları aşağıdan sayıyor. Normalde oyun motoru bunu dengeliyor. WebGPU'daki tarayıcıda bu, HUD resmi için bazen yanlış gitti. Neden sadece bazen, hâlâ kesin bilmiyoruz.


Yeniden üretmek mi? Şansımız yok. Tarayıcı hatalarını kendimiz bulmak için küçük bir test pisti kurduk. Bir sürümün bitmiş oyun paketini indirip kendi bilgisayarımızda başlatıyoruz. Sonra WebGPU'lu, uzaktan kumandalı bir tarayıcı menüde dolaşıyor, bir dünya başlatıyor ve yapay zekâmızın baktığı ekran görüntüleri alıyor. Bunu tam benim bağlantımla ve aynı grafik çipinde üç kez denedik ve üç kez de HUD dikti. Hata yalnızca benim gerçek Chrome'umdaydı.


Hatayı zorlayamıyorsanız, onu algılamanız gerekir. Bu yüzden HUD kamerası artık resminin sol üst köşesine dört piksel büyüklüğünde minik bir macenta nokta çiziyor. HUD dünyanın üstüne serilmeden önce vizör gölgelendiricisi, noktanın nereye düştüğünü görmek için sol köşelerin ikisine de bakıyor. (Gölgelendirici, doğrudan ekran kartında çalışan küçük bir programdır.) Nokta aşağıdaysa gölgelendirici HUD'u çeviriyor. Bunu yaparken köşeleri maskeliyor, böylece noktayı hiç görmüyorsunuz. Ama hata saklandığı sürece böyle bir onarımı test etmek zor. Bu yüzden noktayı bilerek yanlış köşeye koyan bir test anahtarı var. O zaman HUD'un ters durması gerekiyor ve tam olarak öyle oldu, aynı ekran görüntümdeki gibi. Bu, algılamanın çalıştığını kanıtladı. ✅


Akla gelen çözüm bir hata olurdu. “O zaman WebGPU'da hep çevir!” Bunu yerleştirmeden önce test pistinde denedik. Çoğu zaman dik durduğu için HUD'u herkes için bozardı.


Yol boyunca üç tuzak. WebGPU bize birkaç oyun daha oynadı. Birincisi, basit bir kopyalama adımı WebGPU'da bir resmi kendi kendine aynalayabiliyor. Dolayısıyla hatayı aynalanmış bir kopyayla yeniden üretmek işe yaramadı. İkincisi, gölgelendiriciye vermek istediğimiz yeni bir anahtar tarayıcıya hiç ulaşmadı. Üçüncüsü, satırların sırasını kontrol etmek için pikselleri geri okuduk ve çelişkili yanıtlar aldık. Bu yüzden gölgelendirici artık kararını tek bir piksele yazıyor ve biz onu okuyoruz. Tek bir pikselin yukarısı da aşağısı da yok. 😄


Bundan size ne kalıyor. 2026.10.24 sürümünden beri tarayıcıdaki HUD doğru yönde duruyor ve tarayıcıdan alınan ekran görüntüleri yine gerçek resimler. Hata raporları artık bir grafik bölümü de taşıyor; bu bölüm, diğer şeylerin yanı sıra HUD'un hangi yönde durduğunu söylüyor. Yani bir dahaki sefere resim olmadan da anlayacağız. Aynı pakette Lyxette'in raporlarından bir hatayı da düzelttik: bir hayvan artık kazdığınız bir hendeğin üstünde havada durmuyor. 🐾


HUD'u bir gün yine ters görürseniz: tarayıcıda F2 hata raporunu açar. Bakacağız. 🙏

Son Yazılar

Hepsini Gör
Yeni sürüm neden 2026.7.19 ve neden 0.9.2 değil 🗓️

Bugün güncelleyen herkes 0.9.1 sürümünden 2026.7.19 sürümüne atlıyor. Yazım hatası gibi görünüyor ama bilinçli bir karar: sürümleme düzenimizi “anlamsal” sürümlerden tarih tabanlı sürümlere (yıl.ay.sa

 
 

Yorumlar


Bu gönderiye yorum yapmak artık mümkün değil. Daha fazla bilgi için site sahibiyle iletişime geçin.
bottom of page