PDA

View Full Version : Rilasciato il sorgente di Quake 3


fantoibed
22-08-2005, 08:42
Fonte: Quake2 su https://quequero.org/forum/viewtopic.php?t=2308

come annunciato da John Carmack (se non sapete chi è state male ;) ) al QuakeCon 2005 qualche giorno fa, il sorgente di Quake 3 è stato rilasciato al pubblico sotto licenza GPL.
Nella release è incluso il sorgente completo del motore di Quake 3, il sorgente del gioco, il sorgente dell'edtiro Q3Radiant (uno dei migliori level editor della storia, non fatevelo scappare).
Se volete vedere come si scrive un fps, cosa c'è di meglio che guardare al sorgente scritto da coloui che gli fps li ha inventati? Non solo, Carmack è famoso per le sue manie di ottimizzazione (vedere il sorgente di Quake), quindi il sorgente di Quake 3 sicuramente contiene molte informazioni utili per l'ottimizzazione di routine grafiche (ricordo che Quake andava a più di 30 fps a 320x240 completamente via software (era quasi più veloce la versione software che quella accelerata OpenGL)). Un'altra cosa importante è che Carmack ha uno stile di programmazione molto pulito (il sorgente è scritto anche da altri, ma Carmack è quello che di solito fa il motore), capire quello che fa un suo pezzo di codice è semplicissimo e soprattutto non bisogna impazzire con nomi di variabili assurdi.
Che altro dire? Ah si, il sorgente potete usarlo come volete (è sotto GPL), l'unica condizione è che dovete rilasciare il sorgente di qualsiasi cosa fate col motore di Quake 3, al contrario delle release precedenti, ora anche i compilatori bsp e rad sono sotto GPL, quindi potete anche fare livelli usando quei due programmi, insomma, a condizione che rilasciate il sorgente, potete fare un gioco usando il motore di Quake 3 a gratis :) (e potete venderlo volendo).
Se siete programmatori di video giochi, ma anche se siete programmatori in generale, dategli un occhiata, ne vale veramente la pena, dato che difficilmente si trovano sorgenti scritti così bene :)

ecco il link per scaricare il sorgente:
http://www.teamdarkside.net/quake3-1.32b-source.zip

si compila su windows, linux e macosx e ovviamente richiede OpenGL.
State ancora qua? Scaricatelo!!!!

Un'ultima cosa, non fatevi condizionare dal fatto che Quake3 è del 1999, i motori della idSoftware sono ESTREMAMENTE flessibili (Soldier Of Fortune è fatto col motore di Quake2), con poco sforzo potete aggiungere tutte le ultime feature, c'è gente che ha aggiunto il normal mapping, il parallax mapping, le ombre dinamiche alla Doom3 e per-pixel lighting spinto a Quake 1 che è del 1997, figuratevi cosa potete fare con Quake 3.
Scaricate!!!!!!!!!!!

franksisca
22-08-2005, 14:34
scusa, con che cosa lo compilo, è la prima volta che mi trovo una cosa del genere davanti.

fantoibed
22-08-2005, 15:57
Non lo so. Ho visto la notizia e ho pensato che a molti potesse interessare. Non l'ho scaricato (ancora).... :)

RaouL_BennetH
22-08-2005, 16:15
scusa, con che cosa lo compilo, è la prima volta che mi trovo una cosa del genere davanti.

E' scritto nel readme,che ti indica anche come compilare e di cosa hai bisogno a seconda del sistema operativo che hai.

ghiotto86
22-08-2005, 16:28
5 mega il sorgente di quake3?????? :confused: :confused: :confused:

RaouL_BennetH
22-08-2005, 16:36
5 mega il sorgente di quake3?????? :confused: :confused: :confused:

lo zip :)

Scompattato mi risulta una directory di circa 23 Mb.

ghiotto86
22-08-2005, 16:52
lo zip :)

Scompattato mi risulta una directory di circa 23 Mb.

sempre poco per un giocone così pensavo di +.
con visula studio .net si compila???

RaouL_BennetH
22-08-2005, 16:56
sempre poco per un giocone così pensavo di +.
con visula studio .net si compila???

non lo so :( purtroppo visual studio non posso permettermelo.

Ma attenzione!! credo sia il sorgente del motore grafico non del gioco.

ghiotto86
22-08-2005, 17:20
non lo so :( purtroppo visual studio non posso permettermelo.

Ma attenzione!! credo sia il sorgente del motore grafico non del gioco.

bho potrebbe anche essere

VICIUS
22-08-2005, 17:59
I codici sorgenti sono quelli del gioco intero. Sono "solo" 5 mega perchè non c'è altro che il codice sorgente. Per i suoni, grafica, livelli, filmati dovete prendervi il cdrom originale. Ci ho dato un'occhiata ma per ora non sono riuscito a compilarlo. Il buildsystem pare chiamarsi cons che a quanto pare è l'antenato di scons. Molti file sono da convertire in formato unix altrimenti non compilano. E come se non bastasse pare richiede gcc2.95 per essere compilato. Le altre versioni forse sono troppo schizzinose.

ciao ;)

rizzi
22-08-2005, 18:00
Il sorgente del gioco era già stato rilasciato per coloro che sviluppavano i mod.

Se cercate in giro c'è.

Mi ricordo che anche quello era codice estremamente pulito e un periodo mi sono molto divertito a velocizzare i razzi, abbassare la gravità, aumentare la velocità ecc... senza grosse difficoltà nel trovare le cose.

Ciao

ghiotto86
22-08-2005, 18:20
I codici sorgenti sono quelli del gioco intero. Sono "solo" 5 mega perchè non c'è altro che il codice sorgente. Per i suoni, grafica, livelli, filmati dovete prendervi il cdrom originale. Ci ho dato un'occhiata ma per ora non sono riuscito a compilarlo. Il buildsystem pare chiamarsi cons che a quanto pare è l'antenato di scons. Molti file sono da convertire in formato unix altrimenti non compilano. E come se non bastasse pare richiede gcc2.95 per essere compilato. Le altre versioni forse sono troppo schizzinose.

ciao ;)

specialmente gcc 4.0 :mad: :mad: brutte esperienze :sofico:

fek
22-08-2005, 18:24
E' un bel pezzo da museo :)
Ma come valore didattico e' molto basso. E' superato ormai da qualche anno.

Se volete engine open source un po' piu' al passo dei tempi e scritti con uno stile un po' piu' pulito e consono, ecco una lista, sono tutti anni luce avanti a Q3:

http://www.genesis3d.com/
http://www.ogre3d.org/ (questo e' ottimo)

Crystal Space (io imparai su questo anni fa, e ancora lo sviluppano):
http://www.garagegames.com/index.php?sec=mg&mod=resource&page=view&qid=494

Have fun.

MSciglio
22-08-2005, 19:37
E' un bel pezzo da museo :)
Ma come valore didattico e' molto basso. E' superato ormai da qualche anno.

Se volete engine open source un po' piu' al passo dei tempi e scritti con uno stile un po' piu' pulito e consono, ecco una lista, sono tutti anni luce avanti a Q3:

http://www.genesis3d.com/
http://www.ogre3d.org/ (questo e' ottimo)

Crystal Space (io imparai su questo anni fa, e ancora lo sviluppano):
http://www.garagegames.com/index.php?sec=mg&mod=resource&page=view&qid=494

Have fun.

Ovviamente sottoscrivo al 100% :)

Storicamente è una pietra miliare ma dal punto di vista didattico azzarderei anche che è pessimo. Tutto scritto in C con qualche classe usata per raggruppare variabili. E' anche pessimamente documentato e privo di documentazione che spiega quantomeno l'architettura del sistema. L'unico modo per comprendere quel codice è quello di percorrere il flusso delle chiamate C. Inutile dire che personalmente ritengo sia una grande perdita di tempo considerando che quel codice è stato scritto avendo in mente tutto tranne la leggibilità.

Oltre a quanto citato da Francesco menzionerei anche Nebula 2 (http://nebuladevice.cubik.org) che ha tanti spunti molto interessanti dal punto di vista architetturale.

fek
22-08-2005, 21:01
Oltre a quanto citato da Francesco menzionerei anche Nebula 2 (http://nebuladevice.cubik.org) che ha tanti spunti molto interessanti dal punto di vista architetturale.

Non lo conoscevo, e' interessante. Soprattutto l'uso di Python per il build system :)

What is Nebula ?

The leading Open Source 3D game and visualisation engine used in dozens of commercial games and professional visualisation applications released worldwide.

* A well-tried and robust C++ game engine
* An “Operating System” for games

Che ricordi :D

http://online.infomedia.it/riviste/dev/80/articolo03/articolo.htm

Titolo del gioco
PEUCK

Tipo
Sistema operativo per videogiochi

Produttore
7thSense e Francesco "Fek" Carucci