2008-09-16 14 views
0

Merhaba ben bir ana oyun formu ve diğer normal formların çok bir oyun yazmak istiyorum. Bu durumda güncelleme-boya döngüsünü yönetmenin en iyi yolu nedir?Oyun Loop ve GDI over .NET CF

Oyun formu boya döngüsü sadece devrilmeli mi? veya ana yöntemde application.do events() yapmalı mıyım?

Lütfen bana bu konuda yol göster. windows form dünyasında yeniyim

+0

Sorularınız "Bir oyundaki güncelleme-boya döngüsünü diğer normal formlarla ana oyun formuyla yönetmenin en iyi yolu nedir?" ".NET CF Oyun Döngüsü" değil. Lütfen düzelt. – EndangeredMassa

cevap

1

Mantıksal iş parçacığınız formdan ayrı olmalıdır, bu nedenle DoEvents() gerekmeyecektir. GDI + kullanıyorsanız, bir döngü üzerinde bir Güncelleştirme() zorlamanız gerekir. Windows Forms, çift arabelleğe alma işlemini çok iyi yapmaz, bu nedenle grafiklerinizin ne kadar karmaşık olacağına bağlı olarak, titremeyle ilgili bazı zorluklarınız olabilir.

Benim önerim DirectX managed library kullanarak bakmaktır. Öğrenmek için çok şey var, ama size ihtiyacınız olan her şeyi veriyor.

DÜZENLEME: Ben DirectX managed Library çok daha yüksek seviyede API sağlar, çünkü orta basitten karmaşığa oyunlar için çok daha iyi bir platforma gibi görünüyor WPF, yaklaşık son zamanlarda okuma olmuştur. Bununla birlikte, muhtemelen daha karmaşık oyunlar için performans ve esneklik sınırlamaları vardır.

1

Bir oyun yapıyorsanız, DirectX, OpenGL veya XNA'a bakmalısınız.

+0

temelde GDI + 'da bir çok form ve bazı oyun mantığına sahip bir oyun ve .NET CF – Azlam

+0

üzerinde bir oyun. Yine de, bahsettiğim teknolojilere bakmak zorundasınız, winforms ne istediğinizi desteklemiyor çok iyi. – GEOCHET

2

Sorunun gövdesi Kompakt Çerçeve'den bahsetmiyor, sadece Winforms.

Winforms Game Loop

@Rich B: oyun döngü oluşturma nasıl yapılır bağımsızdır (DirectX Bu hemen hemen Tom Miller Win kabul yanıt (Xna Game Studio ve Microsoft Yönetilen DirectX adam) 'dir , MDX, GDI +)

+0

OP'de söylediğin hiçbir şeyi bulamıyorum. Başlığı açıkça CF diyor. Ve bir 'oyun döngüsünde' render etmeyi istiyor. – GEOCHET