Porting F-15 Strike Eagle II su SDL3 e OpenGL


1

Pubblicato il progetto f15se2-ex 0.1.0 — port dell'aeronautica simulator MicroProse F-15 Strike Eagle II su sistemi moderni. Il progetto si basa su codici sorgente ricostruiti della versione F-15 Strike Eagle II v451.03 con l'aggiunta di Desert Storm Expansion Disk del 1991.

L'obiettivo del progetto è trasferire il gioco su architetture moderne, mantenendo lo spirito dell'originale e migliorando gli aspetti tecnici. Per il livello grafico e della finestra viene utilizzato SDL3, per la resa della grafica 3D — OpenGL, l'audio funziona tramite l'emulazione AdLib basata su Nuked-OPL3.

Attualmente il gioco è completamente giocabile. Sono state implementate la migrazione del rendering e dell'input a SDL3, audio funzionante, supporto per joystick e grafica tramite OpenGL.

Principali miglioramenti:

  • rimossa la limitazione a 15 fotogrammi al secondo;
  • la logica di gioco è separata dal rendering;
  • il controllo è diventato più reattivo grazie alla gestione degli eventi tramite SDL3;
  • aggiunto supporto per risoluzioni moderne e schermi widescreen;
  • l'immagine è diventata più nitida grazie a OpenGL e anti-aliasing;
  • aumentata la distanza di rendering;
  • la mappa, il radar e lo schermo degli obiettivi ora vengono visualizzati ad alta risoluzione;
  • gli obiettivi aerei possono essere selezionati proprio come quelli terrestri;
  • risolti alcuni problemi con il rendering di oggetti 3D;
  • il vecchio rendering software può essere attivato tramite F15_RENDER=software.

La compilazione per Linux avviene tramite CMake e Ninja. Su Ubuntu è sufficiente installare SDL3 e compilare il progetto:

sudo apt install libsdl3-dev cmake —preset base-ninja cmake —build build

Dopo la compilazione, l'eseguibile deve essere posizionato nella cartella delle risorse di gioco o deve essere specificato il percorso tramite il parametro —game o la variabile di ambiente F15SE2_DIR.

Il progetto è in fase di sviluppo, quindi ci sono ancora problemi, ma già ora può essere compilato, avviato e completato. Per chi desidera migliorare i vecchi giochi in C, questo può essere un interessante esempio di porting di un gioco DOS su stack moderno.

Miglioramenti pianificati:

  • comportamento delle missili più realistico;
  • ottimizzazione delle contromisure ai missili;
  • intelligenza artificiale nemica più forte;
  • miglioramento della mira della pistola;
  • tracce di missili;
  • modello di danni dell'aereo più dettagliato;
  • menu di impostazioni in-game;
  • miglioramento delle nuvole, del fumo, del terreno e dell'acqua;
  • cabina tridimensionale completa;
  • editor di scenari e modelli;
  • modalità multiplayer;
  • porting inverso su DOS a 32 bit;
  • supporto per la realtà virtuale.

Fonte: linux.org.ru

Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server 🔥 Acquista hosting affidabile per siti web con protezione DDoS, VPS VDS server | ProHoster