{"id":21653609,"url":"https://github.com/karnkaul/ledemo","last_synced_at":"2026-05-08T06:44:47.201Z","repository":{"id":133375186,"uuid":"219228882","full_name":"karnkaul/LEDemo","owner":"karnkaul","description":"Demo Game on 2D C++17 engine using PhysicsFS and SFML","archived":false,"fork":false,"pushed_at":"2019-11-05T01:48:17.000Z","size":401,"stargazers_count":1,"open_issues_count":0,"forks_count":1,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-06-01T23:57:03.864Z","etag":null,"topics":["cmake","cpp","cpp17","game","game-engine","linux","opengl","physfs","sfml","win64"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/karnkaul.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","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":"2019-11-02T23:54:14.000Z","updated_at":"2020-11-11T09:46:16.000Z","dependencies_parsed_at":null,"dependency_job_id":"30590387-cfcb-48c8-962e-2c43cd045a64","html_url":"https://github.com/karnkaul/LEDemo","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/karnkaul/LEDemo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karnkaul%2FLEDemo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karnkaul%2FLEDemo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karnkaul%2FLEDemo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karnkaul%2FLEDemo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/karnkaul","download_url":"https://codeload.github.com/karnkaul/LEDemo/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/karnkaul%2FLEDemo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279070454,"owners_count":26096834,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-15T02:00:07.814Z","response_time":56,"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":["cmake","cpp","cpp17","game","game-engine","linux","opengl","physfs","sfml","win64"],"created_at":"2024-11-25T08:19:31.554Z","updated_at":"2025-10-15T09:58:37.097Z","avatar_url":"https://github.com/karnkaul.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Little Engine Demo\n\n\u003cimg align=\"right\" src=\"https://github.com/karnkaul/LEDemo/blob/master/LEDemo/Resources/Icon.png\" width=\"64\" /\u003e\n\nWritten in **C++17**, utilising [**SFML**](https://www.sfml-dev.org/) and [**PhysicsFS**](https://icculus.org/physfs/), [Little Engine](https://github.com/karnkaul/LittleEngine) is a 2D game engine hobby project with little defined ambition or scope; and this repository demonstrates an example game using it.\n\n[![Build Status](https://travis-ci.org/karnkaul/LittleEngine.svg?branch=master)](https://travis-ci.org/karnkaul/LEDemo) [![Licence](https://img.shields.io/github/license/karnkaul/LEDemo)](LICENSE) [![Twitter](https://img.shields.io/twitter/url/https/karnkaul?label=Follow\u0026style=social)](https://twitter.com/KarnKaul)\n\n\u003e*Note: Visit the LittleEngine submodule [here](https://github.com/karnkaul/LittleEngine)!*\n\n### Installation\nLEDemo pre-releases containing a demo game with Win64, Linux-x64, Linux-ARMv8 binaries can be found [here](https://github.com/karnkaul/LEDemo/releases).\n\n#### Requirements\n1. x64 CPU with at least two threads\n1. Git submodules (CMake scripts will update them automatically, and will fail to configure otherwise)\n1. (Optional) Python 3.5+ (for `installer.py`)\n1. Operating System:\n    1. Windows 7/8/10: [Microsoft VC++ Runtime (x64)](https://support.microsoft.com/en-us/help/2977003/the-latest-supported-visual-c-downloads)\n    1. Linux: OpenAL libraries (`libopenal-dev`)\n    1. MacOSX: Python 3 (app bundles are unsigned; `installer.py` eases the UX)\n\n#### Installing LEDemo\n1. Obtain the game zip (present inside a [GitHub Release](https://github.com/karnkaul/LEDemo/releases) zip)\n1. Unzip it to the installation directory and run `installer.py` via Python 3 (or unzip \".game\" manually and copy the contents of \"[Your OS]\" into the installation directory)\n\n\u003e *Note: OSX builds are in alpha and may not be stable.*\n\n### Development\nVisit the [Little Engine wiki](https://github.com/karnkaul/LittleEngine/wiki/Development) for more detailed and per-platform instructions. `LEDemo` or any other game project just needs to add `LittleEngine` as a library dependency, setup game initialisation through the API (and global variables) in `GameLoop`, and return `GameLoop::Run()` to the OS.\n\n#### Requirements\n1. x64 (ARMv8 is supported but not packaged) multi-threaded target\n1. [CMake](https://cmake.org/download/) for the target, preferably using [Ninja](https://ninja-build.org/) and [LLVM](https://llvm.org/)\n1. [SFML 2.5.1](https://www.sfml-dev.org/download/sfml/2.5.1/) source / internet access (CMake will download it)\n1. (Linux) libstdc++-7; all SFML dependencies (X11, Xrandr, OpenGL, UDev, Freetype, Vorbis, Flac, etc)\n1. (Win 10) [Windows SDK](https://developer.microsoft.com/en-us/windows/downloads/windows-10-sdk) for ninja/MSBuild / Clang/VC++ or [MinGW](http://www.mingw.org/) for MinGW / g++\n1. (MacOSX) Xcode\n1. (Optional) Bash (native/MinGW/WSL), [Python 3](https://www.python.org/downloads/) (all tools scripts are in Bash/Python)\n\n#### Setting up the project(s)\nQuick Start:\n1. Build `LEDemo`\n    1. CMake: generate a project using `CMakeLists.txt`\n    1. Build\n1. Run `LEDemo`\n    1. Set working directory to `Runtime`\n    1. Debug/run the built/installed executable\n\n[Short video](https://youtu.be/wwEubcOixGE) demonstrating full project setup from scratch on Linux (v0.5.0.0).\n\n#### Troubleshooting\n**\"openal32.dll not found\"**\n\n**\"Could not determine Runtime path\" Assert**\n\nEnsure working directory is \"Runtime\" for the `App` target.\n\n**\"Default font is null\" Assert**\n\nEnsure `Resources` submodule is up-to-date, and `GameAssets/Fonts/Default.ttf` is present.\n\n### Contact\n\n* [Twitter](https://twitter.com/KarnKaul)\n\n### Licence\nLEDemo uses the [GNU GPLv3 licence](LICENSE).\n\n\u003e*Note: Code of Conduct can be found [here](CODE_OF_CONDUCT).*\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkarnkaul%2Fledemo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkarnkaul%2Fledemo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkarnkaul%2Fledemo/lists"}