SDL3 wrapper for Nim language with futhark converter.
- SDL3: 3.2.24 (2025/10)
- SDL_ttf: 3.2.2
- Windows OS 11
- Linux Debian / Ubuntu families
- Try to use ImGuin SDL3 example
First delete old version
nimble uninstall sdl3_nimthen
nimble install sdl3_nim - If the package manager of the OS has SDL3 and SDL_ttf packages, install them with the package manager
- Otherwise, install them from source code as follows (on Debian12 / Ubuntu families),
-
Install build tool Ninja
sudo apt install ninja-build
-
Extract SDL3 zip file and
cd SDL-release-3.2.16 mkdir build cd build cmake .. -GNinja -DCMAKE_INSTALL_PREFIX=/usr/local ninja sudo ninja install sudo ldconfig
-
Extract SDL3_ttf zip file and
cd SDL_ttf-release-3.2.2 mkdir build cd build cmake .. -GNinja -DCMAKE_INSTALL_PREFIX=/usr/local ninja sudo ninja install sudo ldconfig
Download SDL3.dll from here, SDL3-3.x.xx-win32-x64.zip
then copy SDL3.dll to your application folder.
git clone https://github.com/dinau/sdl3_nimcd sdl3_nim
make or
pwd sdl3_nim
cd examples/basic
make runor
pwd
sdl3_nim
cd examples/platformer
make runGenerating SDL3 Nim header files with Futhark.
The definition file of SDL3 can be updated by yourself as follows,
-
Replace src/private/SDL3 with latest officail SDL3 library
-
Generate definition file
pwd sdl3_nim make gensrc/sdl3_defs.nimupdated will be generated.
- Futhark 0.15.0
- nim-2.2.4
- Gcc.exe (Rev2, Built by MSYS2 project) 15.2.0
| Language 1 | SDL | Project | |
|---|---|---|---|
| LuaJIT | Script | SDL2 | LuaJIT-Platformer |
| Nelua | Compiler | SDL2 | NeLua-Platformer |
| Nim | Compiler | SDL3 / SDL2 | Nim-Platformer-sdl2/ Nim-Platformer-sdl3 |
| Ruby | Script | SDL3 | Ruby-Platformer |
| Zig | Compiler | SDL2 | Zig-Platformer |
| Language 1 | Project | |
|---|---|---|
| Lua | Script | LuaJITImGui |
| NeLua | Compiler | NeLuaImGui |
| Nim | Compiler | ImGuin, Nimgl_test, Nim_implot |
| Python | Script | DearPyGui for 32bit WindowsOS Binary |
| Ruby | Script | igRuby_Examples |
| Zig, C lang. | Compiler | Dear_Bindings_Build |
| Zig | Compiler | ImGuinZ |