wdire Kilopat Katılım 9 Nisan 2016 Mesajlar 26 19 Ocak 2018 #1 Merhaba, C# Form da küçük bir oyun projesinde top olarak pixtureboxu veya çizilen bir nesneyi hareket ettirirken akıcılığı nasıl sağlayabilirim? Timer da intervalı 1 yapsam bile yeterince akıcı olmuyor, ne yapabilirim ? Son düzenleyen: Moderatör: 19 Ocak 2018
Merhaba, C# Form da küçük bir oyun projesinde top olarak pixtureboxu veya çizilen bir nesneyi hareket ettirirken akıcılığı nasıl sağlayabilirim? Timer da intervalı 1 yapsam bile yeterince akıcı olmuyor, ne yapabilirim ?
ömer furkan gürsel Hectopat Katılım 16 Aralık 2017 Mesajlar 419 Çözümler 2 Daha fazla Cinsiyet Erkek 19 Ocak 2018 #2 Label üzerinde yapmayı deneyin projeyi form yerine.Forma Label ekleyip ekranı kaplatın onun üzerinde deneyin yoksa ara görüntü kopukluğu olur
Label üzerinde yapmayı deneyin projeyi form yerine.Forma Label ekleyip ekranı kaplatın onun üzerinde deneyin yoksa ara görüntü kopukluğu olur
Soraklı Kilopat Katılım 8 Kasım 2015 Mesajlar 435 19 Ocak 2018 #3 Thread kullanmayi deneyin. Dümdüz yazip optimizasyon yapmazsaniz CPU'yu aşırı kullanır. Bitmap, Image sınıfları uzerinde çalışabilirsiniz. Büyük resmi önce RAM üzerinde çizip son çıktıyı tek PB üzerine yansıtirsiniz. Yinede profesyonel işler için C# Form yapısı kullanilmaz, tavsiye etmem.
Thread kullanmayi deneyin. Dümdüz yazip optimizasyon yapmazsaniz CPU'yu aşırı kullanır. Bitmap, Image sınıfları uzerinde çalışabilirsiniz. Büyük resmi önce RAM üzerinde çizip son çıktıyı tek PB üzerine yansıtirsiniz. Yinede profesyonel işler için C# Form yapısı kullanilmaz, tavsiye etmem.
wdire Kilopat Katılım 9 Nisan 2016 Mesajlar 26 20 Ocak 2018 #4 Bence de profesyonel işler için çok iyi bir ortam değil, dediklerinizi deneyeceğim, teşekkürler. Böyle bir şey buldum, Kod:Panoya kopyala this.SetStyle( ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint | ControlStyles.DoubleBuffer, true); this.UpdateStyles(); hangisi daha performaslı bilmiyorum ama böyle bir şey de var Kod:Panoya kopyala DoubleBuffered = true; İkisi de çizilen şekillerin hareket etme performansını arttırıyor.
Bence de profesyonel işler için çok iyi bir ortam değil, dediklerinizi deneyeceğim, teşekkürler. Böyle bir şey buldum, Kod:Panoya kopyala this.SetStyle( ControlStyles.AllPaintingInWmPaint | ControlStyles.UserPaint | ControlStyles.DoubleBuffer, true); this.UpdateStyles(); hangisi daha performaslı bilmiyorum ama böyle bir şey de var Kod:Panoya kopyala DoubleBuffered = true; İkisi de çizilen şekillerin hareket etme performansını arttırıyor.