Jet, sviluppato da CubeCoders, è un rasterizzatore 3D compatto e privo di dipendenze, progettato per moderni microcontrollori come ESP32 e STM32. Scritto in C++17, il software funziona interamente via software e utilizza esclusivamente aritmetica intera e colori RGB565 a 16 bit. È pensato per essere compatibile con display collegati tramite SPI, come ST7796 e ILI9488.
Su ESP32-S3, Jet è in grado di elaborare circa 650 triangoli a schermo a 60 FPS e 1300 a 30 FPS, con una risoluzione di 480×320. Gli sviluppatori affermano che le prestazioni si collocano tra Sega 32X e Sega Saturn.
Perché è importante
Il fatto che Jet non richieda dipendenze né accelerazione hardware offre un approccio che riduce l’onere di integrazione per gli sviluppatori che desiderano utilizzare la grafica 3D in sistemi embedded con risorse limitate. La scelta dell’aritmetica intera e di RGB565 mostra che il progetto è stato concepito in funzione delle risorse disponibili sui microcontrollori e sui display SPI, più che della qualità grafica dei sistemi desktop. Il numero di triangoli dichiarato aiuta a valutare quali scene siano realizzabili, mettendo in evidenza il compromesso tra risoluzione, frequenza dei fotogrammi e complessità della scena su ESP32-S3. Anche il confronto con le console trasforma i dati grezzi sulle prestazioni in un riferimento più comprensibile per i lettori che valutano le capacità 3D dei sistemi embedded. Tuttavia, poiché le misurazioni sono state fornite soltanto per la configurazione ESP32-S3 indicata, non è chiaro se sia possibile ottenere risultati simili con la famiglia STM32 e con altri display compatibili.