Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - Programmare un gioco online
Forum - C# / VB.NET - Programmare un gioco online

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
Irvine (Normal User)
Pro


Messaggi: 86
Iscritto: 27/03/2010

Segnala al moderatore
Postato alle 15:05
Giovedì, 29/07/2010
Salve a tutti, mi sto interessando alla programmazione dei giochi e come linguaggio penso di scegliere il c# con xna ma è ancora da valutare, volevo un pò di chiarezza però su degli argomenti in generale per quanto riguarda il funzionamento di un gioco online.
1) come si può far registrare un utente sul propio sito e successivamente usare l'account sul gioco e memorizzare per questo account tutte le informazioni necessarie ( soldi, oggetti, ecc....)
2) come va impostato un gioco online, un server che deve stare sempre aperto, e i vari client che vi si connettono, ma il gioco deve stare nel server o nel client? e che funzioni deve avere il server ( sopratutto nell'ultimo caso)
3) per aggiornare un applicazione, aggiungere per esempio nuovi oggetti, nuovi comandi ad un menù, che sistema si segue?
4) per quanto riguarda le animazioni come un oggetto che ruota e poi si posa ( animazioni in generale) cosa devo imparare?
5) Il miglior linguaggio di programmazione per creare giochi online client/server con tanto di animazioni?
Aggiungo che il gioco l'ho abbozzato, offline privo di animazioni e che online  deve essere per 2 giocatori ( tra una lista di quelli online 2 si sfidano).

Ho bisogno queste informazioni per chiarirmi le idee, ogni risposta è gradita:)

PM Quote
Avatar
HeDo (Founder Member)
Guru^2


Messaggi: 2765
Iscritto: 21/09/2007

Segnala al moderatore
Postato alle 15:11
Giovedì, 29/07/2010

se le domande sono queste, imo, lascia perdere, c'è ancora tanta strada da fare :)

PM Quote
Avatar
Irvine (Normal User)
Pro


Messaggi: 86
Iscritto: 27/03/2010

Segnala al moderatore
Postato alle 15:18
Giovedì, 29/07/2010
mi interessa un risposta tanto per capire bene quello che devo studiare, una mezza ideaa su cosa fare fino alla 3 domanda la ho.... vorrei qualche consiglio

PM Quote
Avatar
carant (Normal User)
Pro


Messaggi: 69
Iscritto: 08/11/2009

Segnala al moderatore
Postato alle 17:29
Giovedì, 29/07/2010
Ciao,

1) Dovresti usare un database sul tuo server a cui accedi tramite un linguaggio lato server come php, asp, ruby ecc...

2)Il gioco deve stare sul server, se è un gioco online, e va costruito usando flash o javascript (non so altro).

3)Rientra nelle funzioni del gioco, quindi devi modificare l'interfaccia usando sempre il linguaggio con cui l'hai creata.

4)Devi imparare ad usare il linguaggio e le librerie che usi per sviluppare il tuo gioco.

5)Non saprei di certo, però per i giochi si usa molto java, poi di sicuro dovrai imparare il php o l'asp, l'html, javascript credo e devi imparare ad usare flash (se devi sviluppare in flash), devi scegliere in base alle tecnologie da usare per sviluppare il gioco.
:pat::pat:
Inoltre dovresti avere un server potente e che supporti tutti questi linguaggi...

Comunque quoto HeDo, prima devi imparare bene questi linguaggi e poi puoi iniziare.

P.S. Non sono esperto nel settore, ma ho risposto in base alle caratteristiche che conosco di ogni linguaggio. Non ho mai sviluppato per il web. mi scuso e vi prego di corregermi per eventuali errori.

PM Quote
Avatar
Irvine (Normal User)
Pro


Messaggi: 86
Iscritto: 27/03/2010

Segnala al moderatore
Postato alle 17:35
Giovedì, 29/07/2010
per quanto riguarda php e database ci so lavorare più tosto bene, in quanto ad interagire tra database e applicazione non ho idea da dove iniziare, il gioco deve essere client server, o per precisare, lo si scarica ci si logga dal client ( programma per windows) e si gioca, io avevo pensato di mettere il gioco nel client invece, ed ogni azione svolta inviarla al server che la elabora e dice al client cosa far apparire. Le librerie in questione non le ho mai studiate, ma vedrò al più presto il da farsi, grazie per la risposta.
Si accettano altri chiarimenti cmq :k:

PM Quote
Avatar
Thejuster (Admin)
Guru^2


Messaggi: 2305
Iscritto: 04/05/2008

Segnala al moderatore
Postato alle 20:31
Giovedì, 29/07/2010
Testo quotato

Postato originariamente da carant:

Ciao,

1) Dovresti usare un database sul tuo server a cui accedi tramite un linguaggio lato server come php, asp, ruby ecc...

2)Il gioco deve stare sul server, se è un gioco online, e va costruito usando flash o javascript (non so altro).

3)Rientra nelle funzioni del gioco, quindi devi modificare l'interfaccia usando sempre il linguaggio con cui l'hai creata.

4)Devi imparare ad usare il linguaggio e le librerie che usi per sviluppare il tuo gioco.

5)Non saprei di certo, però per i giochi si usa molto java, poi di sicuro dovrai imparare il php o l'asp, l'html, javascript credo e devi imparare ad usare flash (se devi sviluppare in flash), devi scegliere in base alle tecnologie da usare per sviluppare il gioco.
:pat::pat:
Inoltre dovresti avere un server potente e che supporti tutti questi linguaggi...

Comunque quoto HeDo, prima devi imparare bene questi linguaggi e poi puoi iniziare.

P.S. Non sono esperto nel settore, ma ho risposto in base alle caratteristiche che conosco di ogni linguaggio. Non ho mai sviluppato per il web. mi scuso e vi prego di corregermi per eventuali errori.




eh di errori ce ne sono molti :D
ha detto che intende usare c# e XNA quindi escludi asp ruby php ecc. ecc.

Non voglio scoraggiarti prima ancora di iniziare.
ma non è una cosa che puoi fare senza avere un'ottima conoscenza del linguaggio in cui decidi di svilupparlo.

Un gioco viene creato usando apposite librerie grafiche che sfruttano DirectX o OpenGL.
XNA sfrutta le DirectX che ormai sono arrivate alla versione 11 appoggiandosi su un framework appunto chiamato XNA.

quindi personalmente, almeno io eviterei di scriverlo in XNA.
ma direttamente in DirectX Native.
Si, XNA aiuta nella programmazione,
Ma aiuta nel momento in cui conosci perfettamente le basi delle DirectX.

Partendo in fretta e furia ti ritroveresti come quei milioni di utenti che il massimo che fanno e fare copia incolla shader, copia incolla esempio di codice e tirano fuori un semplice gioco.

detto questo piccola botta e risposta alle tue domande.


Testo quotato

1) come si può far registrare un utente sul propio sito e successivamente usare l'account sul gioco e memorizzare per questo account tutte le informazioni necessarie ( soldi, oggetti, ecc....)



Non serve un sito.
Ma serve un "Server" con database SQL.
Che ti mantenga i dati dei giocatori. quindi ti servirebbe imparare il linguaggio SQL
e sfruttare le sue apposite librerie per e Connettori per il .NET


Testo quotato


2) come va impostato un gioco online, un server che deve stare sempre aperto, e i vari client che vi si connettono, ma il gioco deve stare nel server o nel client? e che funzioni deve avere il server ( sopratutto nell'ultimo caso)



He :rotfl:
Il Server è appunto il Server (ammesso che conosci realmente il suo significato)
Il Server viene detto appunto server perchè rimane 24/7 aperto per permettere di far giocare gli utenti, dove al suo interno sono immagazzinati i loro dati.

Il vero gioco è situato nel client, il client recupera solo informazioni sull'utente che dicide di effettuare il login, e recuperare i suoi dati per proseguire nel suo gioco.

Quindi devi imparare i socket, e prepararlo alla gestione di centinaia di utenti.
il vero lavoro và fatto sul server. sul client viene solo impostato l'uso grafico.


Testo quotato


4) per quanto riguarda le animazioni come un oggetto che ruota e poi si posa ( animazioni in generale) cosa devo imparare?



DirectX o OpenGL


Testo quotato


5) Il miglior linguaggio di programmazione per creare giochi online client/server con tanto di animazioni?
Aggiungo che il gioco l'ho abbozzato, offline privo di animazioni e che online  deve essere per 2 giocatori ( tra una lista di quelli online 2 si sfidano).



Senza ombra di dubbio il c++ per la sua incredibile velocità e potenza.
Ma anche altri linguaggi vanno bene. questo dipende sempre dalla tua scelta.
io uso C# :)

Tanto per farti un esempio.

Un mio vecchissimo Engine di Test scritto all'epoca in VB.NET e DirectX 9

http://sourceforge.net/projects/mmorpgmaker/files/MMORpgma ...

questo ti potrà illuminare su quello che occorre e sopratutto il tempo che devi impiegarci :)

saluti.


https://mire.forumfree.it/ - Mire Engine
C# UI Designer
PM Quote
Avatar
carant (Normal User)
Pro


Messaggi: 69
Iscritto: 08/11/2009

Segnala al moderatore
Postato alle 21:13
Giovedì, 29/07/2010
Scusa, avevo capito che vuole fare un gioco tutto online, come quelli in flash. :D:D

Irvine, per raggiungere i milioni di utenti con un gioco devi averlo fatto davvero bene, quindi secondo me dovresti fare prima un pò di pratica con le librerie directx o openGL su giochi più semplici.

:k::k:
Ciao.

PM Quote
Avatar
Irvine (Normal User)
Pro


Messaggi: 86
Iscritto: 27/03/2010

Segnala al moderatore
Postato alle 22:55
Giovedì, 29/07/2010
perfetto hai chiarito i miei dubbi Thejuster, inizio a vedere un po il da farsi con il delphi che è il linguaggio che conosco veramente bene al contrario degli altri. Utilizzo le opengl che andrò ad imparare, pian piano vedrò se è il caso di passare al c++, in quanto il gioco che andrò a creare per ora non sarà qualcosa di troppo impegnativo.
Per quanto riguarda il c++ che conosco (causa scuola ) lo terrò in caldo :D

per finire, per server intendo un pc sempre aperto dove viene situato il programma server a cui vanno a connettersi tutti gli utenti, se per adesso voglio montare il server sul mio computer posso usare come database quello del mio sito web ( linux)?


PM Quote
Avatar
TheKaneB (Member)
Guru^2


Messaggi: 1792
Iscritto: 26/06/2009

Segnala al moderatore
Postato alle 9:38
Venerdì, 30/07/2010
fai prima ad installarti mysql in locale...
e cmq fossi in te prima andrei a studiare le cose che ti ha suggerito Thejuster (quindi C++ oppure C#, meglio il secondo, e DirectX) invece di perseverare con il defunto Delphi. OpenGL potrebbe essere una scelta sensata qualora avessi intenzione di fare un gioco multipiattaforma, ma visto il tuo livello attuale... evita! Le librerie OpenGL ti offrono soltanto funzionalità grafiche, mentre DirectX gestiscono anche input, sonoro e rete. Se fai un gioco usando OpenGL per la parte grafica, dovrai comunque usare qualcos'altro per l'input, il sonoro e la rete, quindi non vale la pena sbattersi più di tanto (inoltre con OpenGL è anche più complesso creare un engine grafico).

Comunque, se posso azzardarmi a fare una stima spannometrica, dal tipo di domande che fai, e dal tipo di dubbi che hai sollevato, credo che ti ci vorranno almeno 1-2 annetti per fare un giochino 3D diverso dal solito helloworld copiaincollato, e altri 3-4 annetti per fare un gioco multiplayer discreto. Ovviamente sarò felice di essere smentito, e magari di darti anche una mano se il progetto dovesse prendere corpo prima del previsto ;-)

Buono studio, ciao!

EDIT:
www.gameprog.it
www.gamedev.net
(ti aiuteranno parecchio)

Ultima modifica effettuata da TheKaneB il 30/07/2010 alle 9:41
PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo