leonscottkfm

Unreal MVP
31 May 2015
1,540
5
219
63
28
(34) İstanbul Avrupa
store.steampowered.com
Aşağıdaki değerlerde sanırım 7400mb VRAM kullanılıyor. Oysaki küçücük bir sahne ekledim. Zaten uyarı veriyordu kapattım uyarıyı.
Fakat bu şekilde çalışmak iyi değil küçücük bir sahnenin 8gb kart yemeside zaten aşırı saçma bir şey. Millet oyun yapıyor benim assetlerden 10 kat kaliteli assetleri var 4gb falan yiyor.
Burada yapmam gereken şey nedir? Eklediğim kadın karakter baya gerçekçi o yiyordur zaten ama bundan daha gerçekçi karakterlerin olduğu oyunlar mevcut bu hiçbir şey yani onların yanında.
VRAM doluluğunu nasıl azaltırım ?




Bu içeriği görmek için üçüncü parti çerezlerine izin vermeniz gerekli.
Daha fazla detay için çerezler sayfasını ziyaret edin.

Bu çözer herhalde

O yeşil alanlarda used max yazan kullanılan mı oluyor ? Ben r.streaming.poolsize 8000 yapmıştım.
şimdi 1000 yaptım %100 oldu.
Ne kadar sınır verirsek o sınırın kullanımını mı gösteriyor ? yani 24gb kartım olsa streamingi 1000 yapsam %100 olacaktı yine ama 24000 yapsam daha düşük gösterecekti değil mi ? Ben 8000 yaptığımda %97 yazıyorsa 7700 mb falan kullanıyor herhalde. Optimization ayarlarında textureyi seçiyorum Gri gözüküyor hepsi iyi gözüküyor. Topluca seçtim tüm textureleri 1024 yaptım hala pool kullanılıyor.


Hocam boş level açıyorum  4gb vram gidiyor zaten şak diye. Şaka mı bu ? Bu motor cortlamış.
 
Streamin pool kullanım için atanmış ama kullanılmayan boştaki VRAM miktarını gösterir.

Bir altındaki required pool ise talep edilen alanı belirtiyor. 286 MB bu sahnedeki bu kamera lokasyonu için yeterli demektir. Streaming pool size 286 yaparsan bu sahne be bu kamera konumu için görüntü kalitesi aynı kalacaktır teorik olarak.

NonStreamingMips VRAM e yüklenmiş ama sahnede kullanılmayan mipleri gösteriyor. Eğer VRAM yetersiz olsaydı bu miktardaki kullanılmayan Mip VRAM'den silinecekti.

Mantığıma göre boş alan çoksa o an kullanmadığı mipleri ve textureleri de VRAM e alıp ilerde yüklemekle uğraşmamak istiyor olabilir. Eğer alan yoksa yüksek yer kaplayan mipleri boşaltıyor, diğer kullandığı texturelere alan sağlıyordur.

RAM'den konu açılmışken geçenlerde sormuştun başka konuda normal RAM için aklıma gelmişken anlatayım. Asset browser özellikle arama yaparken RAM i bir anda dolduruyor çünkü ararken çıkan sonuçları yüklüyor. Geçende söylediğin şu normal RAM yeme olayına bir çözüm var. Browserde thumnailli büyük simgeler yerine "list" görünümüne geçersen arama hızı artar ve thumbnailleri güncelleyip yüklemeyeceği için RAM kullanımı fırlamıyor.
 
Öncelikle eğer bir sorun yaşıyorsan bunun texture streaming den kaynaklandığına emin olman gerek. Eğer sisteminde yavaşlamalar varsa yani sorun yaşıyorsan ilk yapacağın şey bunun sebebini araştırmaktır. Probleme sebep olan şey tamamen farklı bir konu olabilir. O kadar çok konu varki burada saymak imkansız. Oradaki texture pool size aşılmış ama performansa hiç bir etkisi olmuyor da olabilir. Market ten aldığınız ya da bulduğunuz assetler güzel gözüksün diye bütün ayarları max lanarak veriliyor genelde. Oyuna direk atıp kullanmak yüksek kalite assetler için neredeyse imkansız. Hatta oyun studioları kendi yaptıkları assetlere bile bir sürü şey uyguluyorlar engine içerisinde. Yani projeye atarım kullanırım olayı çoğu durumda pek mümkün olmuyor. 
 Dolayısı ile öncelikle sorun yaratan noktayı tespit etmen gerekiyor.
 Eğer UE5 kullanıyorsan Virtual Texture kullanman ve bu problemlere hiç girmemen de mantıklı olabilir.
 
Aslında yavaşlama yok FPS değerleri çok iyi. Rx590 gibi bir kart bile bu oyunda yüksek ayarlarda 40 50 fps alıyor. Ben tüm grafikleri fulledim oyunda , lumen ve virtual shadowsta dahil her şey var. FPS den yana bir sorun yok sorun kart kullanımı. 6 gb kart yiyor sadece böyle bir sahnede. Araştırdım biraz textureleri 1024 yapın diyorlar ben de hepsini seçip 1024 yaptım sadece önemli olanları 2056 yaptım ama yine bellek kullanımı düşmedi. Sadece content listesinde arama yapmam hızlandı. Virtual texture nedir ona bir bakayım.
 
Öteki konuda Low Poly projede bile 4gb ekran kartı yiyor demişsin ben de kendi projemde test ettim. Dediğim gibi tabloyu yanlış oluyorsun. Ayrılmış belleği kullanılan bellek sanıyorsun. Benim projemde sağa sola tüm açılara baktım maksimum 112MB ekran kartı yedi. Üstelik ağaçlar ve bitkiler hariç tüm modellerin kendi BC, normal mapları var ve binalar 2k BC ve normal kullanıyor. Maksimum GPU time 6ms 170 FPS AMD 5600XT ekran kartında. RTX 2060 a yakın bir ekran kartı.

https://www.hizliresim.com/5syepxu

https://www.hizliresim.com/9in89av

https://www.hizliresim.com/l97zc57

İlk iki ekran görüntüsünde işaretledim asıl bakman gereken satırları. Bu satırlardan baktığımızda senin yukarıdaki sahnende 300 MB ekran kartı RAM i yetiyor senin sahneye de. r.streaming poolsize 300 yapıp bir dene sahnede poolsize hatası verecek mi bir bak. Bu arada önemli bir not ben testleri development package alarak yaptım ama editörde de aynı değerleri veriyordu bende. Streaming pool dediği adanmış ama kullanımda olmayan boşta olan RAM i gösteriyor.
 


Burada yazan 4.2 GB 8.0 GB üzerinden kullanılan değil mi ? Bu boş proje 4.2 gb vram tüketmiyor mu burada.


Anladığım kadarıyla bu adıyor fakat kullanmıyor . Poolsizede aynı mantıkla belli bir miktar adıyor üstüne çıkarsa uyarı veriyor. Ben poolsizeyi 10 yaptım uyarı verdi 12 diye. Demekki bu boş sahne 15mb yiyor kartta.
fakat kart neden 4 gb birden adıyor onu anlamadım bu bir sorun çıkarır mı?


Required gerekli alan demek. Bu poolu kaç verirse o alanı aşarsa istenilen miktarı ekrana yazar. Mesela pool 10 sahne 12 istiyor diyelim 2 mb daha ister.

Bu mantığa göre benim sahne 88 mb yiyor



Fakat görev yöneticisi neden kartın 6.0 gb sini alıyor belleğe ?
 
[quote pid='25186' dateline='1676916932']
Fakat görev yöneticisi neden kartın 6.0 gb sini alıyor belleğe ?
[/quote]


Projei paketleyip bana da atabilirsen bende de 6gb mı yiyor bir bakabilirim. Çünkü benim ekran kartı 6GB hafızalı zaten.
 
Oyunun menüsünü çok beğendim grafikleri de mükemmel umarım oyunu sonuca ulaştırırsın :)

Önce başka bir oyun Frostpunk oyununu. 5.9GB ekran kartı kullanımı gösteriyordu. İlk resimdeki gibi. Halbuki bu oyun eski ekran kartımda da oynanıyordu ve o 2GB tı. 5.9GB ekran kartı kullanımdayken ikinci bir oyun kendi oyunumu açtım tam kalitede FPS ve grafiklerde sorun yoktu. Sonra üçüncü bir oyun açtım Farthest frontier üçü birden aynı anda çalışırken senin oyununu açtım. 25-30 FPS arasında oyunu grafiklerde bulanıklık olmadan gayet oynadım herhangi bir takılma FPS drop da görmedim.

Şimdi bu 4 oyun aynı anda ekran kartı VRAM ini kullandığına göre her en son açtığım oyunlarda VRAM yetersizliği olması lazımdı eğer gerçekten 4-6GB Vram kullanıyor olsaydı. Eğer diğer oyunların kullandığı VRAM i boşaltmaya zorluyorsa da ALT-TAB ile diğer oyuna geçtiğim anda diğer oyunda Texture lerin daha yüksek Mip lere düşürülmesinden dolayı anlık bulanık texture görmem lazımdı ama o da yoktu. ALT-TAB ile diğer oyunlara geçtiğim anda görüntü max kalitedeydi.

Burdan çıkarılan sonuç şu. o 4-6 GB dediği kullanım oyunun max çalışması için şart olan kullanım değil. 6GB VRAM ile çok da rahat 4 oyun sığdırılabiliyor VRAM e. Neden tek oyunda VRAM 4-6GB gösteriyor onu ben de bilmiyorum ama benim oyunda da başka oyunlarda da direkt 4-5GB kullanıma çıkıyor bende de. frostpunk kendi oyun motoru ile yapıldı. Farthest frontier UNITY ile yapıldı. Ayrıca belirtmem gerekirse hiçbir oyunda farthest frontierde yaşadığım kadar FPS drop yaşamıyorum. Menü açarken bile FPS drop yiyorum o oyunda.

sadece frostpunk = 

4 oyun aynı anda CPU ve normal RAM = 

4 oyun aynı anda ve senin oyunun ekranında : 
 
Oyuna az önce dev bir güncelleme attım ama onu görememişsin sen eski versiyon inmiş steamden çık gir yaparsan gelir update :D
Anladım bu arada. Büyük ihtimalle VRAMI önbelleğe alıyor ne olur ne olmaz diye. Hazırlıyor önden ama 1gb sini kullanıyor mesela. Diğer kalan hafıza ise Poolda . Aynı ön belleğe alınmış RAM gibi çalışıyor. Orada 6 falan yazması 6gb kullandığı anlamına gelmiyordur büyük ihtimalle.
Oyundayken ESC bas ayarlara girip high yap hepsini FPS 80 e yükselir. Çok bir şey farketmiyor grafiksel anlamda ama.
 
Güncellemeyle baktım şimdi. Shadow ve shading quality i High, diğerlerini medium yapınca 65 FPS e geldi görüntü çok değişmeden.

Birkaç geribildirim istersen şunları gözlemledim:
1-Pick up sesi çok yüksek kulaklıkla oynarken rahatsız ediyor. Başlangıçtaki sol tarafdan gelen ses de bir tık kısılabilir. Ayak sesleri normal.

2-İlk kez settings e girerken crash yedim ama sonrakilerde sorun olmadı. Oyunda bir menü açılınca kamera mouse u takip etmese daha güzel olur. Menü tuşlarına giderken ekran dönüyor sabit kalmasını bekler insanlar.

3- Settings te ayarlamaları yaptıktan sonra ESC ye bastığımda arka plandaki menü kapandı ama settings ekranı hala önümdeydi o kapanmadı. Menü kapanırken herhangi bir submenü açıksa onu da kapatsın.

4-1 tuşu ile admin menüsüne girdikten sonra X tuşu ile kapatınca mouse ekranda kalıyor. 1 tuşu ile tekrar açıp 1 tuşu ile tekrar kapatınca düzeliyor. Ama admin menüsüne girdikten sonra ESC ile bir daha menüyü açamadım.

Bu tip bugların önüne geçmek için gameplaytag ler ile bir state machine yapabilirsin. O state machine componentinte dispatcher ile yeni bir state eklendiğinde ya da silindiğinde bunu çağırırsın. Örneğin bir menü mü açılıyor. State.Menu isminde bir gameplaytag gönder state machine'e. Örneğin player controller bu state değişimini dinliyorsa ve menü ve menü sub statelerini içeriyorsa mouse u gizlesin, kamera hareketini durdursun. Eğer silindiğinde de tagler içinde menu ve sub isimler yoksa tekrar aktifleştirsin. Bu state machine e ping bile gönderebilirsin. Mesela State.Ping.CloseAllWidgets gibi. ESC ye basınca bu pingi gönderirsin ve ESC ile kapanması gereken tüm menüler bu statei gördüğünde kendini kapatsın.

Bunun gibi bir sistem ile yeni bu tip menü buglarının önüne geçebilirsin.

 
Verdiğin tavsiyeler için sağol.Ben onları en sona bıraktım daha çok fonksiyonlarla uğraştım oyunun genel mekanikleri ile.
Bu arada geçen LineTrace ile objektif alma yaptırmıştın. Ben karakterlerin birbirini ittirmesi için de bir fonksiyon yapmıştım daha önce yine overlapla falan uğraşmıştım buglu çalışıyordu. Şimdi ise linetrace ile aynı yöntemi denedim 2 dakikada çok iyi çalıştı.
Silah sistemini falan test etmedin herhalde onun hakkında bir şey yok çünkü :D
G basıyorsun envanterden silah aktif oluyor sağ tuşla hedef alıyorsun. F basarsanda el feneri aktif oluyor.

- tuşu ile karakterler arası geçiş yapabiliyorsun. Ve T tuşu ile FPS / TPS geçişi sağlanıyor. Oyun hakkında senden tavsiye isteyeceğim.
Bazıları oyuna silah eklememin kötü olduğunu , korku oyunlarında silaha yer olmadığını söyledi. Ama ben buna karşıyım.
Bazıları da fps kamerasını kaldırıp sadece tps ile ilerlemem gerektiğini söyledi, ben ise bunu oyunculara bırakmak istiyorum.
Bazıları ise oyun içine hiç hud eklemezsem daha gerçekçi olacağını söyledi (aim hariç)