{"id":51436926,"url":"https://github.com/dpasca/dpasca-sdl2-template","last_synced_at":"2026-07-05T07:30:28.034Z","repository":{"id":43200802,"uuid":"488295509","full_name":"dpasca/dpasca-sdl2-template","owner":"dpasca","description":"Simple template to build SDL2 demos on Windows, Linux and Mac","archived":false,"fork":false,"pushed_at":"2024-11-26T01:52:10.000Z","size":984,"stargazers_count":2,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2024-11-26T02:32:34.950Z","etag":null,"topics":["3d","ai","neural-network","opengl","sdl2","template-project"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/dpasca.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2022-05-03T17:05:23.000Z","updated_at":"2024-11-26T01:52:14.000Z","dependencies_parsed_at":"2024-11-26T03:16:31.856Z","dependency_job_id":null,"html_url":"https://github.com/dpasca/dpasca-sdl2-template","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/dpasca/dpasca-sdl2-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dpasca%2Fdpasca-sdl2-template","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dpasca%2Fdpasca-sdl2-template/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dpasca%2Fdpasca-sdl2-template/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dpasca%2Fdpasca-sdl2-template/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/dpasca","download_url":"https://codeload.github.com/dpasca/dpasca-sdl2-template/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/dpasca%2Fdpasca-sdl2-template/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35147199,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-05T02:00:06.290Z","response_time":100,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d","ai","neural-network","opengl","sdl2","template-project"],"created_at":"2026-07-05T07:30:27.277Z","updated_at":"2026-07-05T07:30:28.021Z","avatar_url":"https://github.com/dpasca.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"## Demos\n\n|  |  |\n|---|---|\n| **Demo1**: A moving red rectangle ![](Docs/demo1_sshot.png) | **Demo2**: A 3D starfield (no *glm* for 3D) ![](Docs/demo2_sshot.png) |\n| **Demo3**: A wire-frame cube made of particles ![](Docs/demo3_sshot.png) | **Demo4**: A cube made with random particles ![](Docs/demo4_sshot.png) |\n| **Demo5**: A 2D rotating quad ![](Docs/demo5_sshot.png) | **Demo6**: A simple voxel scene ![](Docs/demo6_sshot.png) |\n| **Demo7**: A voxelized fractal terrain ![](Docs/demo7_sshot.png) | **Demo8**: Rudimentary texture sampling ![](Docs/demo8_sshot.png) |\n| **Demo9**: Simple self-driving using neural-networks ![](Docs/demo9_sshot.png) |  |\n\n## Required Tools\n\n- [CMake](https://cmake.org/download/) 3.21 or newer\n- A C++20 compiler\n- Git, used by CMake to fetch pinned third-party dependencies\n- Windows: Visual Studio 2022 or newer\n- macOS: Xcode command line tools or Xcode\n- Linux: gcc/clang and standard OpenGL development packages\n\n## Quick Start\n\nDependencies are fetched by CMake and built statically by default. There is no\nseparate externals step.\n\n### Linux/macOS\n\n```bash\n./build.sh\n```\n\nFor Debug:\n\n```bash\n./build.sh Debug\n```\n\n### Windows\n\n```bat\nbuild.bat\n```\n\nFor Debug:\n\n```bat\nbuild.bat Debug\n```\n\nExecutables are written under `_bin`.\n\n## CMake Presets\n\nYou can also build without the wrapper scripts:\n\n```bash\ncmake --preset release\ncmake --build --preset release\n```\n\nUseful presets:\n\n- `release`\n- `debug`\n- `xcode`\n- `vs2022`\n\n## Static Dependencies\n\nThe default build uses pinned vendored revisions of SDL2, glm, and Dear ImGui,\nand builds third-party libraries statically:\n\n```bash\ncmake -S . -B _build/Release -DCMAKE_BUILD_TYPE=Release\n```\n\nSystem packages are opt-in:\n\n```bash\ncmake -S . -B _build/system -DDPASCA_USE_SYSTEM_DEPS=ON\n```\n\nFor distribution builds, keep `DPASCA_USE_SYSTEM_DEPS` disabled. macOS and Linux\nwill still link to platform system libraries/frameworks such as OpenGL, Cocoa,\npthread, or libc, but SDL2/ImGui/glm are not pulled from Homebrew, apt, or other\nmachine-local package managers by default.\n\n## IDE Projects\n\n### Xcode\n\n```bash\ncmake --preset xcode\ncmake --build --preset xcode-release\n```\n\nThe Xcode project is generated under `_build/xcode`.\n\n### Visual Studio\n\n```bat\ncmake --preset vs2022\ncmake --build --preset vs2022-release\n```\n\nThe Visual Studio solution is generated under `_build\\vs2022`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdpasca%2Fdpasca-sdl2-template","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdpasca%2Fdpasca-sdl2-template","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdpasca%2Fdpasca-sdl2-template/lists"}