{"id":17280177,"url":"https://github.com/akuli/3dthingy","last_synced_at":"2025-10-19T16:20:04.434Z","repository":{"id":81318480,"uuid":"196644839","full_name":"Akuli/3dthingy","owner":"Akuli","description":"experiment with creating a 3d game-engine-like-thingy","archived":false,"fork":false,"pushed_at":"2019-10-14T19:00:45.000Z","size":125,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-01-31T16:18:17.784Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/Akuli.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,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-07-12T20:54:15.000Z","updated_at":"2019-10-14T19:00:47.000Z","dependencies_parsed_at":null,"dependency_job_id":"c805c266-aec4-4564-94ea-4226cc5a594d","html_url":"https://github.com/Akuli/3dthingy","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Akuli%2F3dthingy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Akuli%2F3dthingy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Akuli%2F3dthingy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Akuli%2F3dthingy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Akuli","download_url":"https://codeload.github.com/Akuli/3dthingy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245678901,"owners_count":20654738,"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":[],"created_at":"2024-10-15T09:19:38.741Z","updated_at":"2025-10-19T16:20:04.335Z","avatar_url":"https://github.com/Akuli.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 3d Thingy\n\nThis is my experiment with creating a 3d game using SDL 2.\nI do all the 3d-ness myself, and I use SDL2 only for drawing points on a window.\n\n![here it is running](screenshot.png)\n\nYou can use arrow keys to move around, or fly and land with `w` and `s` keys.\n\n\n## Compiling\n\n    $ sudo apt install git gcc make pkg-config libsdl2-dev\n    $ git clone https://github.com/Akuli/3dthingy\n    $ cd 3dthingy\n    $ make\n    $ ./3dthingy\n\nI have no idea what you need to do if you don't have apt.\n\n\n## Running IWYU\n\n**You don't need to do this to run the program.**\nThis is for developing program.\nIWYU checks whether the source code files have the correct includes.\n\n1. Install cmake\n\n        $ sudo apt install cmake\n\n2. Add LLVM 8 stuff to your `sources.list` from https://apt.llvm.org and\n   install the stuff:\n\n        $ sudo nano /etc/apt/sources.list\n        $ sudo apt update\n        $ sudo apt install llvm-8-dev libclang-8-dev clang-8\n\n    Again, I have no idea what you should do if you don't have apt. Sorry.\n\n3. Clone IWYU and compile it\n\n        $ git clone https://github.com/include-what-you-use/include-what-you-use ~/iwyu\n        $ cd ~/iwyu\n        $ mkdir build\n        $ cd build\n        $ cmake ../include-what-you-use -DCMAKE_PREFIX_PATH=/usr/lib/llvm-8\n\n    **If you get a CMake error**, look for `llvm-something` in the error\n    message. If the `something` part is NOT `8`, then the build is using\n    the wrong LLVM version, and you need to make sure that the `-D` part\n    of the `cmake` command ends with 8. The same command is in IWYU's\n    README with 7 instead of 8.\n\n4. Compile the IWYU\n\n        $ make -j2\n\n    This takes a long time and about a gigabyte of RAM because IWYU is\n    written in C++. I don't like C++.\n\n5. Run the IWYU\n\n        $ cd ~/path/to/3dthingy\n        $ export IWYU=~/iwyu/build/bin/include-what-you-use\n        $ make iwyu\n\n    If you get an error about IWYU not finding `\u003cstdbool.h\u003e` or some\n    other include file, try this instead:\n\n        $ export IWYU='~/iwyu/build/bin/include-what-you-use -I/usr/include/clang/8/include'\n        $ make iwyu\n\n    With this, sometimes IWYU suggest `\"stdbool.h\"` instead of\n    `\u003cstdbool.h\u003e` to me, but at least it's better than nothing. Adding\n    `#include \u003cstdbool.h\u003e` instead of copy/pasting IWYU's suggestion\n    works, too.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakuli%2F3dthingy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fakuli%2F3dthingy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fakuli%2F3dthingy/lists"}