mima85 ha scritto:
Figata, si sono addirittura inventati un sistema a macchine virtuali e di comunicazione client/server locale basato su UDP per far parlare il motore di gioco, il motore grafico ed il client utente. Bella anche la gestione delle code di eventi. Mica male un'architettura del genere per gli anni '90, per un videogioco poi.
Già. Diciamo pure che gli id Tech dei primi Quake, per quanto ne so, oltre ad essere tra i primissimi motori grafici 3D in tempo reale, sono stati i primi a proporre un'architettura così ben pensata, e hanno praticamente indicato la strada a tutti gli altri. I motori grafici (parlando sempre di grafica 3D realtime) di oggi non sono altro che evoluzioni di quel tipo architettura, con più fotorealismo, fisica più accurata, ecc...ma lo schema di base quello rimane, più o meno. Senza contare che diversi motori moderni ne sono una evoluzione diretta, quello dei celeberrimi Call of Duty ad esempio deriva dall'id Tech 3, forkato (su licenza commerciale) e poi mano a mano evoluto. Stessa cosa con il Source Engine di Valve Software (il motore di Half Life, Counter Strike e tantissimi altri giochi), è un'evoluzione dell'id Tech 2 originariamente concesso su licenza.
Tra l'altro, grazie al sistema delle macchine virtuali, i mod di Quake III usciti nei primi anni 2000 ancora girano nei port moderni del gioco sui moderni OS senza bisogno di alcuna modifica, tanta roba.
Ma John Carmack è una leggenda e un genio di programmatore, praticamente ha pensato e scritto da solo più o meno il 95% di questa roba. Ha fatto un sacco di soldi, ha un curriculum stellare, e dopo aver abbandonato i videogiochi ha lavorato sulla realtà virtuale, e oggi...lavora sull'IA, speriamo che lì abbia meno successo
mima85 ha scritto:
Conosco un lettore musicale, che si chiama DeliPlayer [..]
Praticamente è lo stesso concetto, applicato a un altro tipo di software. Bellissimo, non lo conoscevo, queste sono gemme di software che non dovrebbero mai andare perdute...