Şimdi Ara

10. Sınıfım, Düşük Sistemler (Intel UHD / 4GB RAM) İçin C++/DX11 ile Borderless Upscaler (UBU v2.1)

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
4 Misafir (1 Mobil) - 3 Masaüstü, 1 Mobil
5 sn
5
Cevap
1
Favori
179
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
Öne Çıkar
0 oy
Sayfa: 1
Giriş
Mesaj
  • Selamlar herkese,


    Ben lise 10. sınıf öğrencisiyim. Intel Core i5-10210U işlemci, 4 GB RAM ve Intel UHD entegre grafik kartına sahip oldukça düşük sistemli bir laptop kullanıyorum. Mount & Blade II: Bannerlord gibi oyunları en düşük ayarlarda 1280x768 çözünürlükte ancak 20 FPS civarında oynayabiliyordum.


    Bu performans sorununu çözmek ve benim gibi düşük sistemli bilgisayarı olan arkadaşlara yardımcı olmak amacıyla **Universal Borderless Upscaler (UBU)** adında bir performans aracı geliştirdim.


    ### Projenin Mantığı Nedir?

    Yazılım, oyunu çok düşük çözünürlüklü pencereli modda çalıştırarak (Örn: 800x600 veya 400x300) işlemci ve ekran kartı üzerindeki yükü hafifletiyor (böylece FPS uçuyor). Ardından saf Win32 API ve DirectX 11 kancaları kullanarak her kareyi yakalayıp, GPU üzerinden ekranın tam boyutuna çerçevesiz tam ekran (borderless) olarak ölçekliyor.


    ### v2.1 Sürümünde Neler Yaptım?

    - Intel UHD sürücülerinin kilitlenmesini önlemek için PrintWindow yerine optimize edilmiş GDI BitBlt hattına geçtim.

    - DXGI Desktop Duplication API entegre ettim ve takılmaları önlemek için zaman aşımını 4ms'ye çektim.

    - Mouse koordinatlarının taşmasını engellemek için fare hareketlerini sanal bir katmanda toplayıp işletim sistemine oranlayarak aktaran bir sistem yazdım.

    - Kısayollar: `Alt + Shift + Z` (Aç/Kapat), `Alt + Shift + 1/2/3` (Nearest Neighbor, Bilinear, Smart Sharpen keskinleştirme modları) ve `Alt + Shift + V` (VSync Aç/Kapat).


    ### Bilirkişilerden İstediğim Yardım (Kilitlenme Sorunu 🐛)

    Proje MinGW-w64 (`build.bat`) veya CMake ile sorunsuz derleniyor. Ancak bir oyunda `Alt + Shift + Z` kısayoluna bastığımda, arayüz katmanı başarıyla oluşmasına rağmen ekran yakalanan ilk karede donup kalıyor. Arka planda oyunun sesleri gelmeye devam ediyor. Muhtemelen render döngüsü ana iş parçacığını (thread) kilitliyor ya da GDI kaynakları Intel GPU üzerinde döngüyü yenileyemiyor.


    Bu projeyi bitmiş static bir kod olarak bırakmak istemiyorum. Tamamen açık kaynaklı, GitHub topluluğuyla birlikte büyütülebilecek ve geliştirilebilecek bir proje olmasını hedefliyorum. Win32 thread yapısına, grafik programlamaya veya DirectX 11'e hakim olan bilirkişiler kodlarımı inceleyip destek olabilir mi?


    **GitHub Kaynak Kodları:** 


    https://github.com/kudiron/UniversalBorderlessUpscaling



    **Hazır Derlenmiş Sürüm (v2.1 .exe indirme linki):**


    https://github.com/kudiron/UniversalBorderlessUpscaling/releases/tag/v2.1



    Kodlardaki thread veya yakalama kilidini çözebilecek her türlü Issue bildirimine ve Pull Request'e açığım. Şimdiden destek veren herkese çok teşekkür ederim!





    _____________________________
  • Eline sağlık güzel kardeşim.




    < Bu mesaj bu kişi tarafından değiştirildi Seto-Kaiba -- 22 Eylül 2026; 19:38:12 >
    _____________________________
  • Seto-Kaiba kullanıcısına yanıt

    teşekkürler

    _____________________________
  • Yapay Zeka’dan İlgili Konular
    Daha Fazla Göster
    
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.