Blog
Minecraft Donmalarını Düzelt: Kare Zaman Artışlarını Ortadan Kaldır
Minecraft'taki takılmalar, düşük FPS'den değil, çöp toplama duraklamalarından ve bölüm yüklemesinden kaynaklanır. Bellek üzerindeki baskıyı azaltın, bölüm yüklemesini sorunsuz hale getirin ve gereğinden fazla RAM ayırmayı bırakın.
Minecraft'ta takılma (stuttering) aslında ne anlama geliyor?
Takılma, bir kare süresi (frame-time) sorunudur, kare hızı (frame-rate) sorunu değil. Ortalama FPS'niz 300 olabilirken, oyun birkaç saniyede bir kısa bir süre donabilir. Sayaç sağlıklı görünür çünkü ani düşüşleri ortalamaya vurur. Siz hissettiğiniz şey ise o ani düşüşün kendisidir. Bunun arkasındaki iki şey çöp toplama duraklamaları ve blok yüklemesidir ve bunlardan daha yüksek bir sayıya ulaşarak bir şeyleri çözemezsiniz.
Kolektör çalıştığında her bir kare için 20'ye düşen 300 FPS'nin yanında istikrarlı 120 FPS'yi hayal edin. 120 daha iyi hissedilir. Gözleriniz ortalamayı değil, en kötü kareyi takip eder. Dolayısıyla buradaki bütün iş, en kötü kareyi daha az kötü hale getirmektir ve şeyleri düzeltme sıranız önemlidir.
| Ne hissediyorsunuz | Aslında ne oluyor | Bunu ne öldürüyor |
|---|---|---|
| Birkaç saniyede bir donma | Çöp toplama duraklaması | FerriteCore, ModernFix |
| Yeni bir araziye geçtiğinizde bir takılma | Ana iş parçacığında blok üretimi | C2ME, Lithium |
| RAM artırımından sonra kötüleşen takılma | Aşırı büyük yığın, daha uzun çöp toplama taramaları | Ayırmayı azaltın |
| Rastgele mikro takılmalar | Arka plan uygulamaları veya yorgun bir disk | Uygulamaları kapatın, diski kontrol edin |
Çöp toplama takılmasını nasıl durdurabilirim?
Her şeyden önce bellek üzerindeki baskıyı azaltın. Çoğu mikro takılma, Java çöp toplayıcısının belleği geri kazanmak için dünyayı duraklatmasıdır. Oyunun tuttuğu bellek miktarını küçültün ve bu duraklamalar hem daha kısa hem de daha seyrek hale gelir. İki mod ağır işi yapar. FerriteCore, Minecraft'ın bellekte tuttuğu verileri yinelenmez hale getirir ve sıkıştırır, ModernFix ise üzerine ek olarak ayırmaları ve yükleme zamanı israfını azaltır.
Gerekçe basittir. Toplayıcı, temizlenecek kadar çok çöp olduğunda oyunu durdurmak zorunda kalır. Toplanacak daha az şey verin ve sizi daha az sıklıkta keser. FerriteCore tek başına yığın ayak izini önemli ölçüde azaltabilir, bu nedenle her ciddi takılma düzeltmesinin tepesinde yer alır.
Ferrit Çekirdek
Minecraft'ın RAM'de tuttuğu verileri sıkıştırır. Daha küçük bir bellek alanı, daha kısa ve nadir GC duraklamaları anlamına gelir.
ModernFix
Tahsisleri kısaltır ve yükleme süresi şişkinliğini giderir. FerriteCore üzerine temiz bir şekilde yığılar.
C2ME
Parça oluşturma işlemini daha fazla CPU çekirdeğine yüklüyor, böylece yeni arazi takılmalarını engelliyor.
Lityum
Dünya simülasyonunu daha ucuza getirir, böylece hareket ederken ve savaşırken oyunun performansı yüksek kalır.
Parçalı yükleme takılmalarını nasıl düzeltebilirim?
Yeni bir araziye hızla girdiğinizde hissettiğiniz sarsıntı, parçacık oluşturmanın ana iş parçacığını boğmasıdır. C2ME, bu iş yükünü CPU çekirdeklerinizin daha fazlasına kaydırır, böylece dünya sizin önünüzde inşa edilir, sizin arkanızda kalmaz. Bunu, varlıkların, mobil yapay zekasının ve fiziğinin her bir döngüdeki maliyetini düşüren Lithium ile birleştirin, böylece simülasyon hiçbir zaman geride kalmaz.
Bu ikisi iş yükünü paylaştırır. C2ME yeni parçacıkları işler. Lithium ise mevcut dünyanın çalıştırılmasını ucuz tutar. Birlikte, açık dünya sprintini dur-kalk sürünmeden, hızını koruyan bir şeye dönüştürür. Bu farkı özellikle hızlı oyunda fark edersiniz. Baskı altındaki akıcı hareket sizin için önemliyse, PvP için istikrarlı FPS nasıl elde edilir bölümüne göz atın.
Daha fazla RAM neden takılmayı daha da kötüleştiriyor?
Çünkü daha büyük bir yığın temizlenmesi daha uzun sürüyor. Java'ya daha fazla bellek verdiğinizde, her çöp toplama taraması daha fazla alan kaplar, bu nedenle karelerinizi donduran duraklama daha uzun, daha kısa olmaz. İnsanlar daha fazla tahsis bekler ve tam tersini elde ederler. Takılmanız bir RAM artışından sonra başladıysa veya kötüleştiyse, suçluyu buldunuz.
Aynı sebepten ötürü, belleği önce boşaltmadan mod eklemeye devam etmek bir tuzaktır. Allocation kaydırıcısına dokunmadan önce FerriteCore ve ModernFix'i yükleyin. RAM özel olarak sorunsa, RAM kullanımını azaltan en iyi modlar (/blog/best-mods-to-reduce-ram-usage) daha derine iner.
Bunun düzeltilmesi için doğru sıra nedir?
Bellek çiftini takın
Fabric'e FerriteCore ve ModernFix ekleyin. Bu, yığın boyutunu küçültür ve çoğu takılmanın ortadan kaybolduğu yerdir.
Parçayı ve işaretleme çiftini ekleyin
C2ME ve Lithium'u yükleyin. Yeni arazi takılmaları durur ve simülasyon ucuz kalır.
RAM'inizi optimize edin
Bütünü 4-6 GB'a düşürün eğer daha yüksekteyse. Yoğun bir bölgede test edin, yeni bir düz dünyada değil.
Şapka tak ve temizle
Yenileme hızınızın hemen altında bir çerçeve sınırı ayarlayın veya VSync'i etkinleştirin ve CPU'nuz için yarışan arka plan uygulamalarını kapatın.
Modları suçlamadan önce hızlı kontrol listesi
Birkaç mod dışı sebep burada gizleniyor ve herhangi bir şeyi yeniden yüklemeden önce eleyebileceğiniz şeylerdir.
- Kare hızı sınırı veya VSync. Düzgün hız, tepe noktası yüksek olsa bile ani yükselmelerden daha iyidir.
- Arka planda çalışan uygulamalar. Tarayıcılar, ses istemcileri ve güncelleme görevleri CPU'yu tüketir ve oyun ortasında takılmalara neden olur.
- Diskiniz. Dolu veya arızalı bir disk, parça okumalarında takılmalara sebep olur. Alan açın ve disk sağlığını kontrol edin.
- Gölgelendiriciler (Shaders). Yoğun bir gölgelendirici paketi, kendi kare süresi maliyetini ekler. Nedeni izole etmek için kapatarak test edin.
İşte burada, elle ayarlanmış bir kurulumun değerini kanıtladığı yer. Terminus, performans yığınını zaten kablolanmış ve başlatma profilini önceden boyutlandırılmış şekilde gönderir, böylece JVM bayrakları labirentinden kaçınıp doğrudan oyuna başlarsınız.
SSS
Yüksek ortalama FPS sorunu gizliyor. Tek bir çöp toplama duraklaması veya parça yükleme takılması, kareleri ne kadar hızlı işlense de, saniyenin bir kesiri kadar dondurur. Belleği ve parça yüklemeyi düzeltin, kare sayacını değil.
Hafıza tarafı için FerriteCore ve yükleme tarafı için C2ME. Lityum, dünya simülasyonunu daha ucuza çıkararak her ikisini de destekliyor. Mümkünse üçünü de birlikte kurun.
Genellikle tam tersi. Daha büyük bir yığın, her çöp toplama taramasında daha fazla tarama yapılmasına neden olur, bu yüzden duraklamalar uzar. Eğer RAM artırımından sonra takılmanız kötüleştiyse, 4-6 GB civarına geri düşürün.
Sık sık evet. Sabit kare hızında ilerlemek, yüksek ve dalgalı bir sayıya göre daha akıcı hissettirir. Yenileme hızınızın birkaç kare altına ayarlayın veya VSync'i açın ve tutarlılığın galip gelmesine izin verin.
Terminus'u yakala
Performance stack pre-tuned. No JVM flags to memorize.