Matteo Basei

Una collezione di piccoli programmi realizzati a scopo didattico.

Inertia la lotta contro il moto rettilineo e uniforme

Inertia è un semplice ed essenziale simulatore spaziale in 2D, uno dei miei più vecchi progetti. Il gioco consiste nel governare la propria navetta manualmente, attivando i propulsori a disposizione e lottando contro l'inerzia. In questo ricorda Asteroids, uno dei videogiochi più famosi di sempre, a cui fa riferimento anche la grafica essenziale in wireframe.

La più piccola navetta a disposizione diventa un puntino al centro dello schermo a confronto con le altre navi e stazioni spaziali del gioco.
La più piccola navetta a disposizione diventa un puntino al centro dello schermo a confronto con le altre navi e stazioni spaziali del gioco.

Si può scegliere una tra le 9 navi a disposizione, dalla piccola navetta di 28 metri alla nave madre di oltre 1 km di lunghezza, ognuna con le proprie caratteristiche di dimensione e manovrabilità. Ogni nave ha, in numero e potenze differenti, propulsori di prua e di poppa, di dritta e di sinistra, e infine quelli per l'imbardata oraria e antioraria.

Passaggio ravvicinato tra le altre navi della flotta.
Passaggio ravvicinato tra le altre navi della flotta.

La fisica, per quanto in uno spazio bidimensionale, viene simulata in modo realistico, così come la gravità, come nel mio programma Newton.exe. È possibile divertirsi ad orbitare intorno a pianeti e ad attraccare a stazioni spaziali o... entrambe le cose: attraccare ad una stazione spaziale orbitante! È possibile attivare o disattivare l'anteprima di traiettoria, che evidenzia se si è in un'orbita circolare, ellittica o in una traiettoria parabolica, e l'anteprima dei boccaporti che aiuta nell'allineamento finale in fase di attracco.

In orbita attorno ad un pianeta con una stazione spaziale, con anteprime traiettoria e boccaporti abilitate.
In orbita attorno ad un pianeta con una stazione spaziale, con anteprime traiettoria e boccaporti abilitate.

L'eredità di Inertia

Se da una parte Inertia è uno dei miei primi progetti, dall'altra è la base da cui sono poi partito per lo sviluppo del mio simulatore spaziale 3D. Inertia può quindi essere considerato l'antenato di Amazing Skies.

Una vecchia versione di Inertia.
Una vecchia versione di Inertia.

Lo sviluppo degli algoritmi per la simulazione della fisica e delle collisioni, ad esempio, sono iniziati da qui, in versione bidimensionale.

Uno screenshot di Amazing Skies nelle prime fasi di sviluppo, dove si può notare la GUI e le astronavi riprese da Inertia.
Uno screenshot di Amazing Skies nelle prime fasi di sviluppo, dove si può notare la GUI e le astronavi riprese da Inertia.

Persino i primi modelli 3D, poi rapidamente rimpiazzati, erano inizialmente le sagome delle navi presenti in questo gioco con l'aggiunta di opportuni vertici e la GUI era inizialmente identica, come si può vedere dagli screenshot delle versioni embrionali di Amazing Skies.

Un altro screenshot di un embrionale Amazing Skies dove si può notare l'anteprima di traiettoria ereditata da Inertia.
Un altro screenshot di un embrionale Amazing Skies dove si può notare l'anteprima di traiettoria ereditata da Inertia.