Platform Support
What platforms GalaxyEggbertCNA targets today.
Summary
| Platform | Status | Notes |
|---|---|---|
| Linux x86-64 | Working | Primary development platform; CNA graphics backend defaults to EasyGL (OpenGL) |
| Windows x86-64 | Untested recently | MinGW cross-compile toolchain exists (cmake/toolchains/mingw-w64.cmake); CNA backend elsewhere defaults to SDL Renderer |
| Web (Emscripten) | Not attempted for CNA | Asset-copy step explicitly skips when EMSCRIPTEN is set, implying future support, but no build has been attempted |
| Android | Not attempted for CNA | Asset-copy step explicitly skips when ANDROID is set; a separate android/ directory and ANDROID.md exist but are not confirmed to cover GalaxyEggbertCNA |
Simple3D vs CNA
GalaxyEggbertSimple3D (the currently-playable reference target) has separately
been built for Linux and Windows; its Android/Web builds are noted in NEXT.md as
"untested since the last engine change." GalaxyEggbertCNA is a newer, desktop-only
effort so far — do not assume its platform matrix mirrors Simple3D's.
No Engine-Difference #ifdef Guards
Per the project's direction-lock rules, neither GalaxyEggbertSimple3D nor
GalaxyEggbertCNA uses #ifdef guards to paper over engine
differences — each target speaks its own API (Simple3D, or CNA+Easy3D) directly. If a backend
beneath either is missing a feature, that is a problem for the sub-repo (simple-3d
or CNA/easy-3d), not something to work around inside galaxy-eggbert.
Platform differences that do exist are resolved entirely by CMake (if(ANDROID),
if(EMSCRIPTEN), if(WIN32), …).