Domanda

Sto sviluppando un gioco di strategia online utilizzando .Net v2.Sebbene il gioco sia principalmente strategico, presenta alcuni elementi tattici che richiedono prestazioni di rete ragionevoli.Ho intenzione di utilizzare pacchetti TCP per dati strategici e pacchetti UDP per dati tattici.

{EDIT} Ho dimenticato di dire che mi sto allontanando da WCF e .NET 3+ per un paio di motivi.Innanzitutto perché desidero mantenere un download ridotto e la maggior parte dei miei clienti dispone già di .NET 2.0.In secondo luogo, perché mi piacerebbe avere la possibilità di effettuare il porting su Mac e Linux e non sono sicuro della disponibilità WCF in Mono.{/MODIFICARE}

Sto cercando consigli sulle librerie di rete.Ho trovato alcune opzioni, come Torque Network Library (C++), RakNet (C++) di GarageGames e la libreria di rete lidgren (C#):

http://www.opentnl.org/ http://www.jenkinssoftware.com/ http://code.google.com/p/lidgren-network/

Qualcuno ha esperienza nel mondo reale con queste o altre biblioteche?


Mi sono appena imbattuto in RakNetDotNet:

http://code.google.com/p/raknetdotnet/

Questo Potrebbe sii quello che cerco...

È stato utile?

Soluzione

Perché limitarsi a .NET 2.0..NET 3.0 (o 3.5) contiene WCF ed è un sottosistema di comunicazione solido e performante con una buona sicurezza..NET 3.0 è solo .NET 2.0 con librerie aggiuntive (WCF, WF, WPF).

Altri suggerimenti

Basato su .NET di Microsoft XNA ti consente di creare giochi in rete su Windows e XBox 360.

http://code.google.com/p/lidgren-network-gen3/

Lidgren.network è una libreria di networking per .NET Framework che utilizza una singola presa UDP per fornire una semplice API per la connessione di un client a un server, leggendo e inviando messaggi.

Vorrei anche sottolineare che "Games for Windows", che XNA utilizza su Windows con il suo Live!le API di rete sono ora gratuite...il che significa che se scrivi un gioco XNA che utilizza le funzionalità di rete, i tuoi utenti non devi avere un abbonamento Gold :-)

http://www.engadget.com/2008/07/22/games-for-windows-live-now-free/

Potresti dare un'occhiata a Entanglar ( http://entanglar.dunnchurchill.com ) se stai cercando qualcosa di livello superiore.Entanglar fornisce il ciclo di vita e la sincronizzazione completi dell'entità.

Sebbene questa domanda sia piuttosto vecchia, lo è un sistema di livello leggermente superiore sviluppato appositamente per i giochi Un gioco - tra le piattaforme supportate c'è anche C#.Esistono versioni di valutazione ed è gratuito per uso personale.

Definisci i tuoi oggetti di gioco in modo simile a UML e un generatore di codice online crea assiemi contenenti i tuoi oggetti di gioco.Inviare aggiornamenti di stato è quindi semplice come chiamare metodi setter.

Non è la cosa giusta se vuoi occuparti delle prese da solo.Tieni inoltre presente che sono uno sviluppatore di APlay, quindi questa è una risposta parziale.

Una domanda antica, ma la metterò lì per chiunque altro si imbatte in questo.Usiamo OpenTNL per il nostro gioco, Bitfighter, e sono costantemente sorpreso da quanto bene funzioni.Ed è gratis se riesci a convivere con la GPL.

Se sei nuovo nello sviluppo di giochi, ti consiglio XNA: è facile programmare.Il vantaggio di Torque, tuttavia, è che dispone di strumenti per la creazione di risorse, che possono anche essere inestimabili.Per un gioco o un FPS di fascia alta, il motore Source è eccezionale.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top