{"id":17481679,"url":"https://github.com/matthewjberger/whyte","last_synced_at":"2025-07-03T20:32:36.500Z","repository":{"id":146115545,"uuid":"86835275","full_name":"matthewjberger/Whyte","owner":"matthewjberger","description":"Whyte is a small, structured game engine.","archived":false,"fork":false,"pushed_at":"2017-08-02T22:30:15.000Z","size":123,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-04-01T13:19:21.043Z","etag":null,"topics":["3d-graphics","cpp","game-engine"],"latest_commit_sha":null,"homepage":"http://matthewjberger.xyz/Whyte","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/matthewjberger.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2017-03-31T15:43:28.000Z","updated_at":"2018-10-22T21:19:01.000Z","dependencies_parsed_at":"2023-05-16T09:15:09.474Z","dependency_job_id":null,"html_url":"https://github.com/matthewjberger/Whyte","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/matthewjberger/Whyte","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matthewjberger%2FWhyte","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matthewjberger%2FWhyte/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matthewjberger%2FWhyte/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matthewjberger%2FWhyte/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/matthewjberger","download_url":"https://codeload.github.com/matthewjberger/Whyte/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/matthewjberger%2FWhyte/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":263399672,"owners_count":23460742,"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","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-graphics","cpp","game-engine"],"created_at":"2024-10-18T22:32:09.071Z","updated_at":"2025-07-03T20:32:36.476Z","avatar_url":"https://github.com/matthewjberger.png","language":"C++","readme":"# Whyte\n\nWhyte is a small, structured game engine.\n\n## Building Whyte\n\nFirst, clone the repo and its submodules:\n\n```bash\ngit clone --recursive https://github.com/matthewjberger/whyte\n```\n\nThen to build, use [CMake](https://cmake.org/):\n\n```bash\ncd whyte\nmkdir build\ncd build\n\n# To generate makefiles and build\ncmake ..\nmake\n```\n\nThis will generate build files in the `build` directory. On Unix this will be typically a makefile, and on Windows this will typically be a Visual Studio solution.\n\nWhen you compile, the output will be placed in the `bin` directory.\n\n### Build Options\n\n#### Unit Tests\n\nTo build the unit tests, add this flag when generating build files with cmake:\n\n```bash\n-DWHYTE_BUILD_UNIT_TESTS=ON\n```\n\nAlternatively, you can select the `WHYTE_BUILD_UNIT_TESTS` option in the CMake GUI.\n\n#### Demo Projects\n\nTo build the demo projects, add this flag when generating build files with cmake:\n\n```bash\n-DWHYTE_BUILD_DEMOS=ON\n```\n\nAlternatively, you can select the `WHYTE_BUILD_DEMOS` option in the CMake GUI.\n\n#### Sandbox\n\nTo build an empty, isolated project that links agains the Whyte engine, add this flag when generating build files with cmake:\n\n```bash\n-DWHYTE_BUILD_SANDBOX=ON\n```\n\nAlternatively, you can select the `WHYTE_BUILD_SANDBOX` option in the CMake GUI.\n\n## Vagrant\n\nThis will generate a graphical Ubuntu 16.10 virtual machine with all the dependencies to build Whyte installed.\n\nAfter loading up this virtual machine, you can follow the build instructions above.\n\n1.) [Install Vagrant](https://www.vagrantup.com/downloads.html)\n\n2.) [Install Virtualbox](https://www.virtualbox.org/wiki/Downloads)\n\n3.) Install the `vagrant-reload` plugin:\n\n```bash\nvagrant plugin install vagrant-reload\n```\n\n4.) Clone this repo with:\n\n```bash\ngit clone --recursive https://github.com/matthewjberger/whyte\ncd whyte\n```\n\n5.) Enter the following command:\n\n```bash\nvagrant up\n```\n\n\u003e Username: `vagrant`\n\n\u003e Password: `vagrant`\n\nThe virtual machine will be downloaded and then opened in VirtualBox. You can login with the password `vagrant`. The files in this repo are in the folder `~/Code/whyte` which is also shared with the host machine.\n\n## Dependencies\n\n* CMake\n  * Ubuntu\n  \n    ```bash\n      sudo apt-get install cmake\n    ``` \n    \n  * Windows - Visual Studio 2015\n    * CMake 3.8+ is necessary to properly set the working directory, startup project, and the linker subsystem.\n      * [Click here to download CMake 3.8.](https://cmake.org/download/)\n\n* SDL2 (32-Bit)\n  * Ubuntu\n  \n    ```bash\n    sudo apt-get install libsdl2-dev\n    ```\n    \n  * Windows - Visual Studio 2015\n    * [Download the latest version of SDL2 from here.](https://buildbot.libsdl.org/sdl-builds/sdl-visualstudio/)\n    * Extract the folder anywhere you like.\n    * Set an environment variable called `SDL2DIR` to point to the root path of the extracted folder.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatthewjberger%2Fwhyte","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmatthewjberger%2Fwhyte","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmatthewjberger%2Fwhyte/lists"}