Veramente troppo esagerato...!!!Originariamente inviato da Lak3d
sì, ma non solo... la parte del motore grafico va sviluppata in linguaggi quali C/C++ (in questo settore è importantissima la leggerezza e l'efficienza) ed è qualcosa di enorme. Se non ne sei capace puoi sempre acquistare licenze da terze parti per circa 500.000 USD. Una volta fatto ciò ti devi creare tutti i tool di sviluppo. E poi non è ancora finita qui perchè dopo tutto ciò non hai ancora niente in mano che possa essere paragonato ad un gioco 3d. Artwork, modeller, level designer, mapper, sound department, motion capture, AI, coding supplementare, animazioni, texture artist ed ecco che tutto inizierà magicamente a prendere forma.
Qualcosa più o meno paragonabile alla difficoltà di creare un sistema operativo ex novo... un videogioco professionale di medie ambizioni al giorno d'oggi costa quasi come un film di Hollywood.![]()
a cosa ti riferisci con enorme... se fosse il codice ti assicuro che non lo è affatto basta una normale classe in un .cpp e un .h con poche righe di codice per rappresentare l'oggetto (moto per esempio) un cpp e un .h per l'AI (la parte + "D"ifficoltosa) e poche righe di codice sia per la fisica (io uso Novodex physic dell'agenia) che per il sound.Originariamente inviato da Lak3d
... ed è qualcosa di enorme...
Identica cosa, anzi ancor meno codice per il netcode.
Avere delle persone che sappiano usare per esempio 3ds max o altro per la mappa del game e il modello. Ma se non si hanno puoi usare 3ds max o altro per fare delle proprie mesh anche caricare solo cubi ho sfere per capire come funziona il 3d poi un domani qualcuno + bravo ti farà i modelli.
questo sopra solo per fare una demina. Per il motore grafico e l'editor è assurdo che possa iniziare a farlo ora ma se gli piace potrà un giorno svilupparlo. Io sono al mio 2 motore grafico.
Il netcode, l'engine del sound, l'AI (la parte + difficoltosa) e le animazioni saranno integrate poi nel motore ma c'è tempo per questo. Implementare gli shader poi non è difficile.
La cosa che invece uno dovrebbe sapere è saper dove e come mettere le mani.
Quindi dico:
Io ho studiato directx e ogl e ho scelto directx.
Installati l'sdk directx 9.0 dal sito della microsoft. Trovera i tut con progetti già pronti per capire come funziona. se vuoi provare le opengl vai sul sito di nehe.
per la fisica digita per novodex dell'agenia e installati l'sdk ha dei tut ben fatti con progetti correlati scritti in ogl ma se usi directx estrapola solo ciò che concerne la fisica. Ti divertirai un sacco. Oltretutto non è + a pagamento, quindi non ci sono scuse per non usarlo.
Tutti gli esempi che trovi sono buoni per capire il 3d e cmq solo a scopo didattico.
Ti faccio un esempio per farti capire:
Se vuoi sapere come fare le "ombre" ci sono molti esempi tipo shadow map e shadow volume.
Ma se vorrai fare un game serio non possono andare si consuma troppo in cpu e succhiano risorse. Per esempio io mi sono studiato una tecnica che si chiama TSM trapezoidal shadow mapping... con google la trovi.
In definitiva con i tut ti diverti e capirai cosa è il 3d.
Non sono in postazione ma un posto dove puoi iniziare (c'è anche un ampio forum dedicato e tut infiniti) è:
http://www.gameprog.it
Qui per vedere una mia demina di studio (poche righe di codice per vedere il 3d):
http://www.twork.it/work/demo_okay.zip (demina per la fisica)
Non sono bravo con 3ds max ma è accettabile.
- devi avere le dx 9.0 giugno 2006
- non devi installare nulla solo il file del driver dell'agenia.exe
- poi avvi l'exe
- F2 vai in fullscreen
- per guidare la macchina tasti awsd
- tasti frecce per muoverti (tu sei il personaggio) mi sono messo in un box fisico 2 righe di codice e funziona alla grande invece che usare il popò di roba di cui sopra.
Mi faccio ritornare la matrice del box e ci lego la telecamera mettendomi al centro e con il mouse seguo le direzioni legato alla telecamera.
- F4 vai in wireframe, così puoi vedere i poligoni dei portoni sia della mesh che del box fisico.
- con il pulsante "add" puoi immettere sulla scena sfere e cubi sono solo primitive fisiche ma ne puoi mettere a bizzeffe.
- lo slider per dosare la gravità.
CON IL TASTO "q" si aprono i portoni per entrare nell'angar i portoni sono corpi rigidi se premi F4 vedrai i poligoni in wireframe.
La macchina l'ho fatta con un cubo e una sfera con 3ds max.
Poi c'è un cubo divertiti ad andarci addoso collidi un pò con tutto.
Novodex sarà immesso come chip sui prossimo OS per questo non è + a pagamento.
Mentre nei tut prova a vedere come si comportano i fluidi o il partocle system è una cosa imbarazzante, Non per niente l'ultimo unreal monterà sul suo motore 3d la fisica con novodex.
Edit:
Dimenticavo:
consiglio come tool net 2003 o 2005.
linguaggio c/c++
studia bene la matematica e trigonometria applicata al pc e non da scienziati.
Per l'AI per esempio per far andare 18 moto guidate dall'AI o sputi sanghe oppure risolvi con 3 spline da far seguire alle moto o mezzi intorno alla strada. 2 spline laterali e una al centro della carreggiata. L' algoritmo che ho studiato e implementati è " il raggio osculatore" lo trovi con google. In questo modo prima di una curva a secondo della sua velocità/massa la moto si piegherà di tot gradi con il suo angolo di rollio e si solleverà piano piano mentre finisce la curva.
Per concludere se 30 anni fà avessi saputo in un sol colpo tutte queste cose oggi farei del mio hobby preferito il mio lavoro... ma non mi lamento
ciao