RX 580 Çimenler piksel piksel ve flickering sorunu

alperkrt17

Hectopat
Katılım
16 Nisan 2019
Mesajlar
592
Çözümler
2
Oyunlarda çimenler daha doğrusu yeşillikler piksel piksel kare kare gözüküyor. Nesnelerin etrafında da sürekli bir kıpırdaşma oluyor. Gölgeler birbirine karışmış vaziyette. Sorunun videosunu bırakıyorum. Videoda daire içerisine aldığım yerlerde bu şeyler yaşanmakta. Sadece daire değil, en fazla o alanlarda olduğu için oraları şekil ile gösterdim. Denediğim çözümler; başka monitörde denedim. FXAA msa gibi ayarları açıp, kapatıp öyle denedim. FPS'i monitörümün Hz'ine sabitledim. Görsel keskinliğini %100 yaptım. VSR açtım. DDU ile Driver silip en yenisini kurdum. Parçalar;
RX 580 8 GB OC, Ryzen 5 1600, Thermaltake 500 +80 RGB PSU, Corsair Vengeance 3000 MHz CL16 8 GB RAM, MSI B450M PRO- M.2, Toshiba OCZ 480GB SSD.

Bu içeriği görüntülemek için üçüncü taraf çerezlerini yerleştirmek için izninize ihtiyacımız olacak.
Daha detaylı bilgi için, çerezler sayfamıza bakınız.
 
Konuyu ben de takip ediyorum, anlamadım gitti. Çözümü olmayan bir sorun olamaz, neyden kaynaklı oluyor, donanımsal mı yazılımsal mı ne?
Kimse yardımcı olmuyor. Garanti sürecim devam ediyor, eğer sorun donanımsal ise garantiye verebilirim. Yazılımsal ise kaç defa format attım herşeyi denedim çözülmedi. Şu anda kötünün iyisini istemiyorum, çünkü garantim var hangi parça sorunlu ise garantiye göndermek kökten çözüm olmalı. Sizce bu video ile garantiye göndersem sonuç alabilirmiyim?
 
Bununla oynamak zorundasın.Bunun çözümü yok.Garantiye gönderip çözemeyen çok var.Çünkü sorun oyunun yapımcılarından kaynaklanıyor.Oyunun kendisinden.
İlk ''Bununla oynamak zorundasın.Bunun çözümü yok.'' dedin, daha sonra ''Garantiye gönderip çözemeyen çok var.Çünkü sorun oyunun yapımcılarından kaynaklanıyor.'' dedin. Bu durumda garantiye gönderip çözen insanlar var ise, oyundan nasıl kaynaklanıyor?
 
Ben çözümü bilmiyorum hocam sadece insanların size yardımcı olmak yerine ''bununla oynamak zorundasın'' demelerine kızdım. Dolayısıyla garantiye gönderirseniz ne olur bilmiyorum.
Bununla oynamak zorundasın. Bunun çözümü yok. Garantiye gönderip çözemeyen çok var. Çünkü sorun oyunun yapımcılarından kaynaklanıyor. Oyunun kendisinden.
Hocam bu nasıl bir çelişki? Sorun oyundan kaynaklanıyorsa sorun yazılımsal demektir. Ayrıca yazılımsal sorunsa garantiye gönderip çözenler nasıl çözdü?
 
Ben burada "Garantiye gönderip çözenler olmuş" yazmış mıyım acaba bir bakın bence.
Aşağıda detayları açıklayacağım, ama öncelikle şunu söyleyeyim, sizin yapabileceğiniz bir şey yok, ancak oyun yapımcıları (ya da Nvidia ve AMD) bunu düzeltebilirler. Onlar da yıllardır başarısız oldukları 4K satışlarını arttırma stratejisini bu şekilde çirkefliklerle arttırmak istedikleri için bunu yapmayacaklardır.

Bugün bütün profesyonel youtuberlar 4K testler yaparlar, monitör incelerler ama biri bile çıkıp "4K oyun oynayın, herşey harika, asla daha düşük çözünürlük kullanmayın" demez. Bu da hem monitor hem de ekran kartı üreticilerini baya mutsuz ediyor olmalı.

Önce LOD nedir ile başlayayım. "Level of Detail". Bildiğiniz gibi oyunlarda her bir sahne için önce geometrik olarak herşeyin ekrandaki yeri, uzaklığı, açısı vs belli oluyor. Sonra da üstüne kaplamalar/texture eklenerek görüntü oluşturuluyor. Diyelim ki bu kaplama çok yüksek çözünürlüklü olsun, mesela 2048x2048 (burası monitörden bağımsız, resim çözünürlüğü). Fakat bu kaplamayı yapacağımız nesnemiz ekranda çok uzak bir yere düştüğü için ekranımızda hepi topu 25x25 piksel işgal etsin. İdeal ve düzgün hazırlanmış bir oyunda "mipmap"ler devreye girer.

Mipmap nedir?
Oyun yükleme ekranında ekran kartı, 2048x2048 kaplamanın hem enden hem boydan yarısını oluşturur. 1024x1024. Sonra onun da yarısı, 512x512. Bu böyle 1x1'e kadar gider ve hepsi hafızada tutulur. 25x25 görüntüye en yakın olanı da kaplama olarak kullanır. Bu durumda 32x32 kaplamayı birazcık "sıkıştırarak" 25x25 yapması, 2048x2048'lik kaplamayı sıkıştırmayı denemesinden daha mantıklıdır.

Anisotropic Filtering'in ne olduğunu daha önce merak etmiş arkadaşlara burası yabancı gelmemiştir, çünkü benzer mipmapleme ve filtrelemeler orada da yapılıyor. Sadece tüm görüntüyü küçültmek yerine, uzak açılı parçaya küçük resim, yakın açılı parçaya büyük resim yerleştiriliyor.

Peki mipmapler olmadığında ne oluyor? Oyun gerçekten 2048x2048'lik kaplamayı 32x32'ye düşene kadar "sıkıştırıyor". Sıkıştırmada iki önemli detay vardır, pikselleri eleyerek mi sıkıştırıyorsunuz yoksa ortalamalarını alarak mı? Elerseniz detaylar ve renkler "kaybolur", ortalama alarak filtre ederseniz detaylar "azalır", renkler çoğunlukla "muhafaza" edilir. Ama ortalama almak işlem yükü olan bir iştir. Mipmapler bu muhafaza etme işini çok daha başarılı yapıyor ama tembel oyun yapımcıları bunları sürücülerin otomatik değerlerine bırakıp oyun esnasında oluşmaya bırakıyorlar.

Peki işin scaling kısmı ne?
Az önce 25x25 bir alana 32x32 bir kaplama sıkıştırma örneği okudunuz, bir diğer seçenek ise 16x16 olan (32x32'nin yarısı) küçük bir mipmapin "esnetilmesidir". Bu durumda da düşük kalite kaplama, olduğundan büyük hale getirilir. Peki buna ne karar veriyor? DirectX 9 çağının sonuna kadar buna sürücüler karar veriyordu. Hatta Nvidia ya da AMD ayarlarından bunu elle değiştirebiliyorduk.

İdeal bir dünyada LOD skalası "0" olmalıdır. Yani atıyorum 15x15 piksellik bir parçaya 15x15 piksellik bir resim yapıştırılmalı ve "cuk" oturmalıdır. Böylece asla "sıkıştırma ya da esnetme" olmayacaktır. Ama tabi ki bu mümkün değil. Onun yerine "en yakın alt ya da üst" değer seçilir, ona göre de "esnetilir ya da sıkıştırılır".

Eskiden LOD, 0 veya 0'dan büyük değerler alıyordu. Bu sayede 1, 2 vs gibi değerler için ekrandaki kaplamaların tamamının birer boy küçük mipmaplerinin esnetilmiş halleri kullanılıyordu. Böylece genel olarak bütün sahnenin texture/kaplama kalitesi biraz azaltılmış oluyordu.

Eski oyunlarda çözünürlükler daha düşük, kaplamalar daha küçük ve detaylar daha az olduğu için bu tip detayları sadece yarı şeffaf, kendini tekrar eden desenlerde açıkça görüyorduk. Google'a "Half Life positive LOD" yazarak kolayca farkı görebilirsiniz. Genellikle CS:GO gibi oyunların oyuncuları dikkat dağıtan herşeyi yok edip oyun hamuru gibi basit renkler elde etmek için çok yüksek LOD değerleri kullandılar, çünkü bu kolaylıkla sürücü ayarlarından ayarlanabilen bir şeydi. Üstelik başka avantajları da vardı.
1) Ekran kartında VRAM yükü çok az da olsa azalıyordu. Yakın geçmişte 64MB ekran kartı kullanmış olanlar bunun önemini daha iyi anlayacaktır.
2) Anti-Aliasing ihtiyacı azalıyordu. Tüm görüntüler "esnetilmiş" olduğu için pastel bir şekilde bütün renkler birbirlerine yaklaşmış oluyor ve köşeler de kolayca çizilip gözü yormuyorlardı.
3) Uzaktaki nesnelerin detayları daha da fazla azaldığı için bu nesneler çok basit bir kaç renkle çiziliyorlar ve "az detay = az aliasing" mantığından yararlanıp titremiyorlardı. Çünkü bir pikselin bir önceki sahnede görüntülediği renk ile sonra görüntüleyeceği renk birbirine yakın, hatta çoğu zaman aynı idi.

Dezavantajları da var tabi, ama şu an çok önemli değiller.

Bunları sürücülerde kurcalamak mümkün olduğu gibi, müdahale olmadığında oyunun ön tanımlı değerleri geçerli oluyordu.

Sonra bir gün, büyük ihtimalle kazayla (burasını Reddit'te okudum, belki kazara değildir) sürücülerde negatif LOD skalası atamak mümkün oldu. -1, -2, -3 gibi değerler ile bütün kaplamalar hep bir, bazen bir kaç boy büyük olarak hazırlanıp "sıkıştırma" işleminden geçecek şekilde üretilebilir hale geldiler. Yapımcılar hemen bunu benimsediler. Çünkü yüksek çözünürlüklü ortamlarda avantajları vardı. Tabi dezavantajları da var. Madde madde yazayım. Hatta görsel arayanlar için Nvidia'nın, The Witcher 3 oyunu ve LOD hakkında karşılaştırmalı örnekler verdiği güzel bir sayfası bile var.

Avantajlar:
1) Her daim bir ya da bir kaç boy büyük kaplamalar kullanıldığı için daha fazla detay görüntünün içine "sıkıştırılabiliyor".
2) Günümüz oyunlarında çoğunlukla post-processing anti-aliasing kullanılıyor. Özellikle FXAA gibi, sahneyi bulanıklaştıran ve detayı azaltan bu tip anti-aliasing tekniklerinde peşinen "detayı arttırmak" görüntü kalitesini dengede tutmak için kullanılabiliyor.
3) Aynısı temporal anti-aliasing için de geçerli. Hatta orada faydaları açıkça görülebiliyor.
4) Yapımcıların hedefleri hep 4K'da olduğu için, yüksek çözünürlüklü sahnelere daha fazla detay rahatlıkla doldurulabiliyor ve özellikle uzak nesnelerin bütün detayları kolayca görülebilir hale geliyor.
5) Sabit duran, fotoğraflık görüntüler için harika bir opsiyon.

Dezavantajlarına gelelim:
1) En büyük dezavantajı, "sıkıştırma" işlemini yaparken filtreleme yatay ve dikey taramaları içerdiği için, azıcık bile eğimli veya yuvarlak bir yüzeyde ciddi miktarda aliasing olabiliyor, ortalık tırtıklardan geçilmiyor.
2) Sadece geometrik değil, kaplama içinde de kalıntılara (texture artifacts) sebep olabiliyor. Örneğin The Witcher 3 sayfası örneğinde saman desenli bir çatı örneği var. Detay artmasına rağmen, kaplamanın çözünürlüğü, gerçek piksellerde kendilerine yer bulmak için birbirleriyle savaşıyor. Hareket ederken çatıdaki samanlar anlamsızca titriyor.
3) Aynı sebepten dolayı küçücük detaylar büyük değişiklikler yapabiliyor. Örneğin bir karede, elektrik direği üzerindeki bir çatlak çok küçük olduğu için görüntülenmezken bir sonraki sahnede açı değiştiği için görüntülenmesi gerekiyor ama negatif LOD değerinden dolayı o piksele bir sürü detay "tıkıştırılıyor". İki resim arasında kısacık sürede kocaman ek farklılıkları çıktığı için biz bunu "yürüyen pikseller/Pixel shimmering" olarak görüyoruz ve özellikle GTA V gibi oyunlarda işi baş dönmeleri ve kusmalara kadar götürebiliyor.
4) Bu gibi titremeler ne yazık ki FXAA gibi post-processing tekniklerle giderilemiyor, ancak azaltılabiliyor. Yani yüksek çözünürlükler ve temporal anti-aliasing şart.
Hatta "4K'da anti-aliasing kullanmıyorum ben ya" diyenlerin aksine her daim güçlü bir temporal anti-aliasing mecburiyet haline geliyor.

Peki buradaki en kötü haber ne? Kötü haber şu, DirectX 10'la başlayarak, artık sürücü içerisinde manuel LOD ayarı yapılamıyor. Oyun yapımcılarının "ben o kadar uğraştım, o kaplamalar yüksek çözünürlüklü görünecek kardeşim" ısrarları, benchmarklarda "eşitsizlik" bahaneleri, hatta ve hatta türlü yarışmalarda hile sayılması gibi sebeplerle artık LOD, müdahale edilemez bir hale getirildi. Hatta Nvidia Inspector'da bulunan ve negatif değerlere izin vermemekle yükümlü "LOD clamp" tuşu bile aslında boş bir tuş ve hiç bir fonksiyonu yok (yine burayı Reddit'ten okudum, bir AMD kullanıcısı olarak deneme şansım olmadı. Ama AMD'de kesinlikle yeni oyunlarda LOD müdahalesi mümkün değil).

Buna bir de oyun yapımcılarının Mipmapleri üretmedeki tembellikleri ve de şeffaf yüzeyler için (örneğin çitler aslında şeffaf boşlukları olan tek parca kaplamalar) aplha-blending yapmaya da üşenmeleri eklenince LOD'den doğan titreme, aliasing, köşelenme ve bozulmaların tamamı kaçınılmaz oluyor.

Tuz biber ekeyim; yeni oyunlar ve sürücüler birbirlerini tanıdıkları için her karta ve her çözünürlüğe farklı LOD değerleri atanıyor ve bunları biz kullanıcılar göremiyoruz. Örneğin GTA V'te GTX 1060 ile oynarken negatif LOD devrede oluyor ve oyun sizi TXAA ya da yüksek çözünürlük kullanmaya adeta zorluyor. GTX 750 Ti gibi bir kartta ise 0'a yakın bir değer kullanarak resmen FXAA yeterli mesajı veriyor.

Gizli amaç; yeni ve yeni sayılabilecek kartlarda çözünürlüğü ve arttırmaya sizi zorlamak. Ondan sonra gidip 4K monitor alacaksınız. Bu sefer 4K'da oyun oynamak için daha güçlü ekran kartı alacaksınız, masraf da masraf.

Özellikle 2012-2016 arasında çıkan oyunlarda bu tip zorlamalar görmek mümkün. Crysis 3'te SMAA 4x'in yetmemesi, GTA V'in halleri ve yine bunun gibi oyunlara bakıldığı zaman o dönemin insanlara zorla yüksek çözünürlük dayatmak isteme çabası direk göze batıyor. Nvidia da bundan kendine pay çıkarmak isteyip "monitör satamazsak TXAA bahanesi ile Nvidia satarız" kafasına girdi o dönem. Onun açıkça desteklediği Unreal Engine de bugün bile hala o aklımdan parçalar taşıyor.

Kısacası bugün temporal anti-aliasing ile işler yoluna birazcık girmiş gibi olsa da negatif LOD'nin hayatımıza girişi zorla ve dayatmalarla oldu.

Alıntıdır.
Artık umarım anlamışızdır arkadaşlar.
 
Eline sağlık güzel bir yazı. Okumadan önce şunu söyleyeyim. Garantiye gönderip çözemeyen çok var demek, azınlık bir kesimin de garantiye gönderip çözmüş olması anlamına geliyor. Eğer şöyle deseydiniz ''Garantiye gönderip kimse çözemedi''. O zaman doğru bir anlam olurdu. Şimdi yazınızı okuyorum.
 
Garantiye gönderip çözemeyen çok var.
Ben burada "Garantiye gönderip çözenler olmuş" yazmış mıyım acaba bir bakın bence.
Dostum o cümleni alıntıladım. O cümleden anlaşılan şu ''garantiye gönderip çözemeyen çok kişi var ama az da olsa çözen kişiler de var''.

Alıntı yaptığınız paragrafları da tamamıyla anlamamızı beklemeyin, teknik bilgiler içeriyor. Bize daha basit bir şekilde anlatmanız lazım. Bir de neden genelde böyle bir sorun olmayıp bazı kişilerde olduğunu açıklayan bir kısım göremedim. Şimdi bu sorun kullanıcıların %99'unda olmuyor, kalan %1'lik kısımda ne farklı ki bu sorun oluşuyor? Yani mesela sorun oluşan bir bilgisayar ve sorun oluşmayan bir bilgisayar evimizde var. Mantıken bunların parçalarını değiştirince sorun düzelecek, yanlış mıyım?

Diyeceksiniz senin konuyu açan arkadaşla ne alakan var neden bu kadar kasıyorsun, çünkü arkadaşın nasıl hissetiğini biliyorum. O kadar para verip kötünün iyisine razı olmak hiç kimse istemez.
 
Bende bunu anlamadım. Arkadaşın anlattığı olayı kavradım. Fakat neden herkes de değil de bende oluyor? Ya da daha iyi şekilde sorayım. Neden tüm RX 580 GB OC kullanıcılarında "aynı ayarlarda" olmuyor da yine bir RX 580 GB OC kullanıcısı olan "ben"im başıma geliyor? Bu sorun yazılımsal olsa aynı ekran kartını kullanan arkadaşımda da olurdu, fakat onda aynı ayarlarda böyle bir sorun olmuyor.
 
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…