2025-12-19 15:51:20 +00:00
2025-12-18 23:51:43 +00:00
2025-12-19 11:07:32 +00:00
2025-12-19 15:51:20 +00:00
2025-12-18 18:05:14 +00:00
2025-12-19 13:57:53 +00:00
2025-12-18 19:30:38 +00:00
2025-12-19 13:25:08 +00:00
2025-12-19 13:25:08 +00:00
2025-12-19 13:25:08 +00:00
2025-12-19 13:57:53 +00:00
2025-12-19 13:57:53 +00:00
2025-12-19 02:58:54 +00:00
2025-12-18 17:17:23 +00:00
2025-12-19 15:51:20 +00:00
2025-12-19 00:18:03 +00:00

SDL3CPlusPlus

Minimal SDL3 + Vulkan spinning cube demo.

Cheat sheet

Dependencies

  • python scripts/dev_commands.py dependencies installs the Conan graph in build.

Configure & build

  • python scripts/dev_commands.py configure runs Ninja with the default build-ninja directory and Release build type; add --generator vs for the Visual Studio generator or --generator ninja-msvc when you want the MSVC-aware Ninja folder.
  • python scripts/dev_commands.py build targets build-ninja by default (change --build-dir if you configured elsewhere).
  • python scripts/dev_commands.py msvc-quick invokes the VC vars + Ninja one-liner (pass --bat-path to point at another Visual Studio layout).
  • Combine --dry-run with any subcommand to inspect the alias-driven shell invocation without executing it.
  • python scripts/dev_commands.py run launches spinning_cube from the configured Ninja output; pass --build-dir when you configured elsewhere.

Run

  • python scripts/dev_commands.py run [--build-dir ...] to launch spinning_cube; source build/conanrun.sh / build\\conanrun.bat if Conan exports env vars before running the helper.

Runtime configuration

  1. sdl3_app --json-file-in loads JSON configs (script path, window size, lua_debug, etc.).
  2. sdl3_app --create-seed-json config/seed_runtime.json writes a starter file assuming scripts/cube_logic.lua sits beside the binary.
  3. sdl3_app --set-default-json [path] stores or overrides the default runtime JSON; Windows writes %APPDATA%/sdl3cpp, other OSes use $XDG_CONFIG_HOME/sdl3cpp/default_runtime.json (fallback ~/.config/sdl3cpp).

GUI Demo

scripts/gui_demo.lua paints the Lua GUI framework on top of the Vulkan scene. Launch it as ./build/sdl3_app --json-file-in config/gui_runtime.json or register that config via sdl3_app --set-default-json.

Description
No description provided
Readme MIT 219 MiB
Languages
C++ 67.8%
C 27.7%
Python 0.8%
Lua 0.8%
Yacc 0.6%
Other 1.9%