由 CubeCoders 开发的 Jet,是一款面向 ESP32 和 STM32 等现代微控制器打造的紧凑型 3D 光栅化器,无需任何依赖项。该软件使用 C++17 编写,完全基于软件运行,仅使用整数运算和 16 位 RGB565 色彩。其目标是兼容通过 SPI 连接的 ST7796 和 ILI9488 等显示屏。
Jet 在 ESP32-S3 上以 480×320 分辨率运行时,约可处理 60 FPS 下的 650 个屏幕三角形,以及 30 FPS 下的 1300 个屏幕三角形。开发者表示,其性能介于 Sega 32X 与 Sega Saturn 之间。
为何重要
Jet 无需依赖项和硬件加速,这为希望在资源受限的嵌入式系统中使用 3D 图形的开发者提供了一种可减轻集成负担的方案。采用整数运算和 RGB565,表明该项目并非以桌面级图形质量为重点,而是依据微控制器和 SPI 显示屏的资源条件进行设计。公布的三角形数量揭示了 ESP32-S3 上分辨率、帧率和场景复杂度之间的权衡,有助于评估可实现的场景。与游戏机的对比,也让原始性能数据成为评估嵌入式 3D 能力的读者更容易理解的参照。不过,由于测量数据仅针对所述 ESP32-S3 配置,因此在 STM32 系列以及其他兼容显示屏上能否取得类似结果,目前仍不明确。