Discussione Voglio CREARE UN VIDEOGIOCO. Si, bravo...

Stato
Discussione chiusa ad ulteriori risposte.

B.I0B

Utente Silver
13 Marzo 2011
86
8
53
88
Ultima modifica:
Allora, premetto che questa discussione nasce per togliere ogni dubbio a quei nabbetti (come me) che aprono in continuazione thread con la classica frase:
"Voglio fare un videogioco! Magari un MMquelcavolocheè o un FPSticavoli." oppure "Ma cosa bisogna studiare per inventare un videogioco?" "Voglio fare un FPS come COD O BF".

Bene, sedetevi e non restate shockati. :D
Questo post fa per voi.

Prefazione e avvertimento:
Scommetto che tu sei un ragazzo con molte idee e grande immaginazione. Così un bel giorno ti alzi dal letto e decidi che vuoi fare il game developer. Bene.
Ma sbagli a pensare che sia un lavoro divertente. Non dico che non lo sia, ma è anche estenuante e una strada sicuramente difficile da percorrere.Non credere sia sedersi, scrivere 4 cosette e giocherellare tutto il santo giorno.
SEI STATO AVVERTITO. :patt:

Passo numero 1: Avere un idea di ciò che si vuole fare.

E' innanzitutto fondamentale avere un idea di quel che si vuole fare...non si può mica incominciare a studiare senza sapere su cosa concentrarsi.
il game development si differisce in 4 settori principali.
-Coding
-Grafica 3D
-Grafica 2D
-Musica

Riesci a fare una di queste cose? Ce n'è qualcuna che ti interessa in particolare? Se la risposta è no, sappi che ti devi concentrare in uno di questi particolari settori.
Per carità, c'è anche chi fa 2 o 3 incarichi alla volta e se te la senti così grossa da volerci provare, beh..scegli la tua strada e fatti sotto.

Passo numero 2: Team o non team?

E' una cosa più che logica che da soli non si arriva da nessuna parte. Ma è davvero necessario avere un team alle proprie spalle? Beh...questo dipende dal passo numero 1. Per dire, se vi occupate della grafica e del Coding allo stesso tempo, allora vi servirà solo un bravo musicista che faccia il resto.
Inoltre alto fattore importante per prendere questa decisione, deve essere il tempo.
Il tempo è fondamentale. Se siete da soli, è più che logico che ci metterete più tempo allo sviluppo di tutto il materiale che vi serve.
Quindi basate bene la vostra decisione su questo fatto.
Se volete un team allora dovete sapere che è necessario formare un team di almeno 10 o 15 persone(per lavori grossi) 5 persone (per lavori piccoli dovrebbero bastare.):

-programmatori,
-grafici
-musicisti
-altro personale.


Poi proponiamo la nostra idea a quante più persone possibile, avendo le idee chiare.
Ricordiamoci di dare a tutti i membri del team un compito ben preciso per far si che nessuno si annoi. E' spesso capitato a vari amici che conosco e che hanno team e compagnie Indie che a causa di queste cose che possono sembrare banali, si sono lasciati abbandonare dai propri collaboratori.

Passo numero 3: Definizione del progetto.

E' importante davvero definire il progetto che volete fare e su quale piattaforma questo dovrà correre.
Perchè? Ma allora sei proprio zuccone. E' logico che se andrai a creare un gioco flash non lo farai mai correre su xbox, playstation o pc.
Quindi innanzitutto definisci bene la tua idea.

...
So cosa stai pensando.
...
Smettila.

Sicuramente avrai pensato
"Evvai adesso posso creare un mio videogioco, che divertente che sarà! Creerò il gioco più bello di questo mondo, qualcosa tipo COD O BF."

Ovvio che no. Se parti così vai già malissimo.


Spesso partire con un grande progetto non porta da nessuna parte e non importa quante persone tu abbia al tuo seguito. Se fosse così semplice internet sarebbe già pieno di FPs. Non trovi?

Innanzitutto scegli un progetto DAVVERO DAVVERO DAVVERO"semplice".

Ad esempio....puoi partire progettando un gioco flash.

"Ma io voglio fare un fps :( "

Smettila con sta storia, idiota.
Concentrati.
Allora incomincia con un fps flash.
Spesso partire con progetti semplici porta (a lavoro compiuto) grande soddisfazione e autostima all'interno di un gruppo di developers.
Per incominciare vai con un flash, poi un mobile e poi fai quello che vuoi.

Passo numero 4: I tool sono importanti dannazione!

Per realizzare un gioco occorre selezionare dei buoni strumenti (spesso anche più di uno): la cosa fondamentale è tenere conto del fatto che i tool più professionali,nonostante siano migliori, sono anche più difficili da usare, meglio optare quindi per un software che ci permetta di lavorare a pieno regime e con una certa scioltezza e facilità .. non dobbiamo mica arrivare a sentirci dei grandi professionisti, e poi al momento dell'utilizzo sbatterci la testa a destra e sinistra! No? :V

Passo numero 5: Studia studia studia studia! CAPRA!

Cosa stai aspettando? Hai voluto la bicicletta? Ora pedala.
E' fondamentale studiare se si vuole arrivare a diventare dei game developers.
Quindi è importantissimo studiare le cose giuste in base a alla tua scelta iniziale.

Siccome io di grafica ne capisco poco, ti lascio solo i programmi che conosco, li aggiungerò dopo.
Ma se vuoi darti al coding, allora penso di poterti aiutare.

INNANZITUTTO è fondamentale sapere l'inglese.

"Ma io sono analfabeta. :( " Tu dirai, beh allora lasciami dire che sono piccioni senza zucchero,per così dire. :sisi:

Per entrare nel mondo del game development e anche della programmazione è necessario almeno capire qualcosina di inglese perchè spesso i tutorial migliori e anche i manuali sono COMPLETAMENTE in Inglese e quei libri/manuali/tutorial che vengono tradotti fanno davvero pena, per non parlare poi che quando lo finisci ci saranno dei termini che ti sembreranno arabo nonostante tu li conosca a memoria in italiano. :oddio:
Quindi potresti partire studiandoti quello. :patt:

ACTIONSCRIPT 3.0

Partiamo dal fatto che (come abbiamo detto sopra, -hai letto TUTTA la guida vero?-)dobbiamo creare qualcosa per il flash.
In questo caso non posso che consigliarti di studiare AS3- ActionScript 3.0.
Si, potresti studiare anche cose diverse, tipo il C++ ma il linguaggio AS è già una buona base solida per imparare la programmazione orientata ad oggetti e non è nemmeno difficilissimo. Viene un pò difficile a chi non ha mai avuto esperienze di programmazione.
Siccome i manuali in italiano di AS scarseggiano ti lascio un manuale di Adobe ufficiale e completamente aggratese :sisi:. (Ma ricordati quello che ho scritto sopra! Scemo!)

Poi, se volete accellerare tutti i processi perchè ve la sentite davvero grossa...
allora potete incominciare a studiare Unity. Con quello e delle solide basi di C# siete già a cavallo, o ad asino o a mulo, dipende dalla vostra velocità.
Sennò rastrellatevi la testa di C++ createvi i vostri engine (consigliato solo a chi se la sente incommensurabilmente grossa) e fate tutto, non credo ci sia molto da aggiungere a questa parte, visto che se già voi volete andare di C++ lo conoscete sicuramente ad occhi chiusi, no? ;)

Benissimo, incominciamo con i link.

Manuale di Adobe Flash CS. ActionScript 3.0 in Italiano.


A proposito di ActionScript, quasi dimenticavo...devi per forza utilizzare Flash CS di Adobe per seguire questo e molti altri tutorial. Lo so, è una rottura dover scaricare/comprare un programma solamente per imparare. Ma va fatto. In caso appena avrò tempo scriverò una guida su come utilizzare FlashDevelop, ma vi conviene intanto scaricarvi FLASH CS. A parte che se non sapete nulla di questo linguaggio vi viene anche più semplice imparare.

Tutorial di ActionScript 3.0

Per adesso vi lascio questi. Studiate intanto la programmazione generale, perchè ci vogliono davvero molte basi.
Per quanto riguarda il manuale di Adobe, potete anche fermarvi alle BITMAP, ma quelle studiatele davvero bene.

Per quanto riguarda il Flash CS di Adobe, dovete vedervela voi, voglio evitare warez.

Inoltre c'è questo manuale per quanto riguarda il game development in flash:

The Essential Guide to Flash Games: Building Interactive Entertainment with ActionScript 3.0 [Brossura]


Che è sicuramente un "must have" per la programmazione dei giochi flash ;)

C++

Il C++ (che per gli anaflabeti si legge "SSI PLAS PLAS") è il linguaggio qualificato in eccellenza nell'industria dei videogiochi e quasi per ironia del destino è uno dei più difficili linguaggi che ci siano. :sisi:
Vi dirò per esperienza personale (anche se lo studio da poco) però, che nonostante sia complicato, se riuscite a capirne la logica...siete sempre un passo avanti rispetto agli altri programmatori...è davvero carino.

Partiamo con i manuali. Per il C++ vi posso lasciare anche manuali dedicati appositamente al game development. Non rilascio link per il download perchè (ancora una volta) non voglio rischiare di fare warez e mettere nei casini sia me che il forum :) Quindi vi rilascio i titoli dei MIGLIORI manuali. Se voi ne avete sempre altri, potete anche suggerire, ma vorrei inserire in questa lista solo titoli da serie A.

Accellerated C++

Beginning C++ through game programming <- game development + C++
:sisi:

C++ Programming Language


Di questi, io vi consiglio vivamente di fare un processo inverso. Comprate prima Beginning C++ through game programming e ve lo leggete, poi Accellerated C++.
Il terzo non l'ho letto, perchè Accellerated C++ è già VERAMENTE ottimo.

Un altra serie di libri che vi consiglio di acquistare (ma se trovate il link mandatemelo pm :asd:) è
la serie dall'1 al 7 degli Game Programming Gems.

Che trattano sempre di C++ ma contengono anche tutti gli errori, sia enormi sia minuscoli che potreste commettere.

Ivolumi di Game Programming Gems si occupano principalmente di:
- Stile di programmazione (C++ of course)
- Basi di matematica applicata ai videogame (Geometria e Algebra)
- Intelligenza Artificiale (dozzine di articoli su A* e simili)
- Grafica avanzata (Shading, illuminazione, ecc...)
- Programmazione Procedurale
- Programmazione di rete
- Audio
- ecc...

Per adesso, vi lascio solo questo materiale. Fatevelo bastare, pravi pampini :patt:.

Ah, quasi dimenticavo. Come ambiente di sviluppo non usate quel cavolo di DEV C++ schifoso. Piuttosto scaricatevi Visual C++ Professional :)
______________________________________________________________________________________________________________

Hai delle domande? Scrivi sotto e cercherò di risponderti. Se invece secondo te c'è qualcosa che può essere aggiunta dimmi pure, scrivi sempre sotto e ti ascolto :)

Guida ancora incompleta.
Aggiorno nel pomeriggio o domani mattina. Scusate ma ho seriamente da fare.
Aggiornamenti che avverranno:

-Engine appositi al flash develop.
-XNA
-C# e Unity
-Programmi di grafica.
-Libri per accrescere la propria cultura videoludica. ;)
-LIBRO PARTICOLARE DA PRENDERE IN OGNI CASO. :)
-Molto altro ancora.


Ciao ;)

La guida è stata scritta interamente da me, ma non posso non ringraziare...molti altri (di altri forum) che mi hanno aiutato in questo cammino quando ero troppo nabbo per capire qualsiasi cosa. Vi ringrazio profondamente.

3d. In costante aggiornamento.
 
Bravo, non avrei mai avuto voglia di scriverlo anche se riconosco che andava fatto. Ora quando chiederanno di creare giochi basterà incollare il link di questa discussione :)
I concetti (se non ho dimenticato qualcosa) sono a mio parere corretti.
Per i programmi ci sono discussioni precedenti in cui si parla di Engine come Unity e quant'altro.
 
Grazie mille. Si, aggiornerò domani, adesso mi sto occupando di alcune cosette.
Domani metto una lista dei programmi che possono servire e dei vari IDE in base alla piattaforma. :)
 
  • Mi piace
Reazioni: FabioHouse
Ultima modifica:
@Exit93
Manterrò la promessa di aggiornarla. Grazie.

@Error28
Grazie :)

@Murdercore
Oggi aggiorno, non so se lo farò tra dieci minuti o di pomeriggio, però aggiorno.
:)

@RuggeriExtreme
Perchè tu invece hai lasciato un post utile no?
Se poi la sezione è morta può ancora rinascere.

- - - Updated - - -

AGGIORNATO:
AGGIUNTO:
-PREFAZIONE E AVVERTIMENTO :asd:
-SOME TUTORIALS ACTIONSCRIPT 3.0
-SOME BOOKS FOR C++.
-BOOK ACTIONSCRIPT 3.0 AND GAME DEVELOPMENT FLASH
-PROSSIMI AGGIORNAMENTI
 
@Exit93
Manterrò la promessa di aggiornarla. Grazie.

@Error28
Grazie :)


@Murdercore
Oggi aggiorno, non so se lo farò tra dieci minuti o di pomeriggio, però aggiorno.
:)

@RuggeriExtreme
Perchè tu invece hai lasciato un post utile no?
Se poi la sezione è morta può ancora rinascere.

- - - Updated - - -

AGGIORNATO:
AGGIUNTO:
-PREFAZIONE E AVVERTIMENTO :asd:
-SOME TUTORIALS ACTIONSCRIPT 3.0
-SOME BOOKS FOR C++.
-BOOK ACTIONSCRIPT 3.0 AND GAME DEVELOPMENT FLASH
-PROSSIMI AGGIORNAMENTI

si ma il topic serve a farlo leggere, se la sezione è disabitata da mesi che senso ha fare questi topic, per dirti da solo che sei bravo a scrivere?
 
Ultima modifica:
Perchè scusa, se intanto tu posti e il forum cerca di migliorare li visualizzazioni nella sezione?
Inoltre spesso chi incomincia con l'hacking poi passa a qualcosa di più consistente e soddisfacente (senza offesa per chi fa game hacking). Proprio come ho fatto io. Di ragazzi come me ne conosco a bizzeffe.
Per non parlare dei lurkers che stanno solo a guardare senza registrarsi.

- - - Updated - - -

Direi di aggiungere anche dei manuali per il game developer generale e della matematica nel game programming.

A breve posterò un manuale per quanto riguarda il game design.
Per quanto riguarda la matematica adesso vedo. Spesso sono gli stessi manuali dei linguaggi nel dare istruzioni al riguardo, se posso posto qualcosa di più specifico.
In caso ci sono comunque già belli e postati i Game Programming Gems. ;)
Grazie mille per l'osservazione. :)
 
La "matematica per il game programming 2d" non si trova in nessun manuale, sono argomenti semplicissimi e basilari che si studiano anche alle superiori.
 
Si trovano. Anzi, ci sono anche dei manuali commerciali sulla matematica nei giochi che comprano tutti. Poi per il 2D sarà la matematica delle medie o al massimo dei primi anni delle superiori, ma per il 3D la cosa diventa molto più complessa, alcune cose te le fanno studiare all'università e no alle superiori.
 
Avrei preferito vedere una guida divisa in tanti topic, tutto ammassato rischia di incasinarsi. Chi vuole fare un gioco con un engine (tipo unity) vorrà dei consigli nettamente diversi rispetto a chi vuole farlo andando di sola programmazione.
Inoltre non condivido tutto quello che hai scritto. Non condivido che è un bene proporre la propria idea a più gente possibile, secondo le mie pochissime esperienze direi meglio soli che mal accompagnati. Gestire un team non è facile e se vuoi fare un videogioco limitare questo problema è un bel vantaggio: fai il più possibile da solo e cerca aiuto solo per il minimo indispensabile. Magari la storia cambia se si assumono proffessionisti, ma se si cerca aggratis in giro per internet è meglio prendere lo stretto indispensabile.
Sconsiglio anche di imparare il C++ per fare videogames: o conosci già il C++ e lo utilizzi per fare videogames o te lo studi senza pensare a fare giochi. Per impararti in modo serio questo linguaggio non ci vuole poco tempo e se hai in fisso in testa l'idea di fare videogames va a finire che ci provi senza conoscerlo abbastanza, di conseguenza non imparerai mai il C++ e non riuscirai mai a finire un gioco. Se qualcuno vuole imparare un linguaggio per fare un videogioco gli consiglierei qualche linguaggio (relativamente) semplice, tipo Java, C# o python.
Se riesci prova ad approfondire anche sulle varie piattaforme, sui vari os, sulle varie librerie (anche su directx e opengl) e sui varie engines. Potrebbe uscirne fuori una buona discussione... anche se un mega post iniziale non so quanto sia leggibile :V

Nonostante le mie critiche, ti confermo che è un buon post. Sta sezione era piena di progetti che già dal principio era chiaro che finivano male, spero che ci sia qualcuno che seguirà i tuoi consigli.

la sezione è morta
Purtroppo quoto, ma solo questa frase.

Si trovano. Anzi, ci sono anche dei manuali commerciali sulla matematica nei giochi che comprano tutti. Poi per il 2D sarà la matematica delle medie o al massimo dei primi anni delle superiori, ma per il 3D la cosa diventa molto più complessa, alcune cose te le fanno studiare all'università e no alle superiori.
Esattamente.
Per il 2D bisogna (vabbè, bisognerebbe) conoscere molto bene la geometria bidimensionale, po' di trigonometria e cose simili.
Vediti gli spazi geometrici, le matrici, i vettori, le trasformazioni, un minimo di trigonometria e la fisica di base. L'importante è che tu capisca come applicare questi concetti al tuo gioco, poi se non ti ricordi bene qualcosa e se non ti ricordi le formule te le cerchi quando ne hai bisogno: è importante avere un'idea su come si potrebbe risolvere il problema che ti si pone davanti.
Non ho idea di come siano i libri delle superiori (mai avuto uno :asd:), ma suppongo che vadano bene... secondo me te la puoi cavare anche con la roba online. Una volta che sai cosa ti serve per risolvere quel determinato problema, ti cerchi la spiegazione generale su internet e te la studi.
 
  • Mi piace
Reazioni: Tyrion Lannister
Devo ammettere che ora che ci penso non ha tutti i torti riguardo a tutto..
Per il problema della suddivisione in sezioni potresti semplicemente suddividere meglio il post con colori, titoli, per argomenti in modo che sia il più leggibile possibile, che non scoraggi il lettore. Trovarsi un "ammasso indefinito" di testo, per quanto giusto concettualmente sia, è controproducente.
Oppure fare un pdf, sempre suddiviso in sezioni.
 
Allora faccio una cosa.
Ieri mi hanno tolto il modem a casa. Appena avrò tempo e mi restituiranno internet la "riscriverò" completamente.
In effeti anche io mi stavo chiedendo se non fosse tutto un "poco troppo" ammassato. Ed effettivamente è brutto da leggere.
Nel frattempo se qualcuno vuole aiutarmi a fare un pò il lavoro può anche farlo, se c'è un modo. Vedremo poi di sistemare i crediti.
Grazie a tutti per i preziosi consigli.
 
È più giusto dire: "hai fatto aprire gli occhi a tanti ragazzi", in quanto il loro sogno di creare un videogioco è sempre li, ma ora, al contrario di prima, sanno che c'è da studiare molto prima di realizzare il loro sogno in questo campo.
 
Va bhe direi una guida creata per scoraggiare chiunque. Io sono dell'idea che bisogna partire dal semplice, con un progetto già pronto di base. Non partite subito cib mmorgp, che a noi parere sono i più complessi da codare, nè da un FPS, che può sembrare semplice ma non lo è. Un esempio? Come mai cod mw3 fu criticato molto e come mai sul comparto multiplayer di farcy3 è stato previsto un fallimento totale? Perché non hanno presentato nessun cambiamento sostanziale nel gameplay.
 
  • Mi piace
Reazioni: PIPPOBAUDO
Va bhe direi una guida creata per scoraggiare chiunque. Io sono dell'idea che bisogna partire dal semplice, con un progetto già pronto di base. Non partite subito cib mmorgp, che a noi parere sono i più complessi da codare, nè da un FPS, che può sembrare semplice ma non lo è. Un esempio? Come mai cod mw3 fu criticato molto e come mai sul comparto multiplayer di farcy3 è stato previsto un fallimento totale? Perché non hanno presentato nessun cambiamento sostanziale nel gameplay.

La guida non deve scoraggiare proprio nessuno.
La guida dice solamente cosa studiare.
E' logico che si deve partire con un progetto semplice ma partite con qualcosa di già fatto (ovvero volere la pappa pronta) è la cosa più sbagliata che si possa fare.
Si parte innanzitutto studiando programmazione generale, poi si incomincia a fare dei giochini da console, poi si passa al tetris, snake e pian pianino si impara.
La guida non scoraggia. O hai voglia di studiare tanto ed imparare (visto che di studiare in questo campo non si finirà MAI) oppure niente.
C'è ben poco da dire.

Per quanto riguarda lo sticki e l'aggiornamento, ci sto lavorando offline, magari facendo un bel formato pdf. Ma spero comprendiate che al momento ho seri problemi di salute.

Per quanto riguarda l'utente che diceva che non esistono libri di matematica applicati ai videogiochi, ti sbagli. (almeno per quanto riguarda il 3D) per il 2D al momento non ho trovato niente.
Eccolo qui, questo è tra i migliori.

3D:
Mathematics for 3D Game Programming and Computer Graphics: Amazon.it: Eric Lengyel: Libri in altre lingue


Salvatore
 
  • Mi piace
Reazioni: PIPPOBAUDO
Stato
Discussione chiusa ad ulteriori risposte.