{"id":25554010,"url":"https://github.com/aakrishtsp/reynolds-steering-behaviours","last_synced_at":"2025-04-11T23:42:36.816Z","repository":{"id":275340047,"uuid":"925790914","full_name":"AakrishtSP/Reynolds-Steering-Behaviours","owner":"AakrishtSP","description":"Implementation of Reynold's Steering Algorithm using OpenGL","archived":false,"fork":false,"pushed_at":"2025-02-19T20:26:17.000Z","size":531,"stargazers_count":1,"open_issues_count":0,"forks_count":2,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-25T19:39:12.550Z","etag":null,"topics":["2d-graphics","cmake","glad","glfw","glm","imgui","opengl","simulation"],"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/AakrishtSP.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":"2025-02-01T18:53:22.000Z","updated_at":"2025-02-19T20:24:44.000Z","dependencies_parsed_at":"2025-02-01T20:24:18.748Z","dependency_job_id":"0f5ff55d-d634-474f-8148-aa7960e361a3","html_url":"https://github.com/AakrishtSP/Reynolds-Steering-Behaviours","commit_stats":null,"previous_names":["aakrishtsp/reynolds-steering-behaviours"],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AakrishtSP%2FReynolds-Steering-Behaviours","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AakrishtSP%2FReynolds-Steering-Behaviours/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AakrishtSP%2FReynolds-Steering-Behaviours/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/AakrishtSP%2FReynolds-Steering-Behaviours/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/AakrishtSP","download_url":"https://codeload.github.com/AakrishtSP/Reynolds-Steering-Behaviours/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248497901,"owners_count":21113982,"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":["2d-graphics","cmake","glad","glfw","glm","imgui","opengl","simulation"],"created_at":"2025-02-20T12:49:01.134Z","updated_at":"2025-04-11T23:42:36.780Z","avatar_url":"https://github.com/AakrishtSP.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Reynolds Steering Behaviors\n\nThis project implements Reynolds' Steering Behaviors using OpenGL.\n\n## Cloning the Repository\n\nTo ensure all submodules are cloned properly, use the following command:\n\n```sh\ngit clone --recursive https://github.com/AakrishtSP/Reynolds-Steering-Behaviours.git\n```\n\nIf you forgot to clone recursively, you can initialize and update submodules manually:\n\n```sh\ngit submodule update --init --recursive\n```\n\n## Building with CMake\n\n### Requirements\n- CMake (\u003e=3.30 recommended)\n- A C++ compiler with C++17 support\n- OpenGL (typically provided by your system or graphics drivers)\n- GLFW, GLM, DearImGui, glad (included as submodules)\n\n### Steps to Build\nPrerequisite:\nInstall dependencies\nUbuntu:\n```sh\nsudo apt install build-essential wayland-protocols libwayland-dev libxkbcommon-dev libx11-dev libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev libgl1-mesa-dev cmake\n```\n\nArchLinux:\n```sh\nsudo pacman -S base-devel libxrandr libxinerama libxcursor libxi mesa cmake\n```\n\n1. Navigate to the project directory:\n   ```sh\n   cd Reynolds-Steering-Behaviours\n   ```\n\n2. Create a build directory:\n   ```sh\n   mkdir build \u0026\u0026 cd build\n   ```\n\n3. Run CMake to configure the project:\n   ```sh\n   cmake ..\n   ```\n\n4. Compile the project:\n   ```sh\n   cmake --build . --config Release\n   ```\n   Or on Unix-based systems:\n   ```sh\n   make -j$(nproc)\n   ```\n\n5. Run the executable:\n   ```sh\n   ./build/bin/ReynoldsSteering\n   ```\n\n### Summary\n\nEnsure you have CMake and a compatible compiler installed. Then, follow these steps:\n```sh\nmkdir build\ncd build\ncmake ..\nmake -j$(nproc)\n```\n\n#### On Windows\n\n```sh\nmkdir build\ncd build\ncmake .. -G \"Visual Studio 17 2022\"\n```\nThen, open the generated `.sln` file in Visual Studio and build the project.\n\nAlternatively, use:\n```sh\ncmake --build . --config Release\n```\n\nRun the executable:\n```sh\n./build/bin/ReynoldsSteering.exe\n```\n\n## Troubleshooting\n\n### Submodule Issues\nIf you run into issues with submodules, try:\n```sh\ngit submodule update --init --recursive\n```\n\n### CMake Errors\n- If CMake fails to find OpenGL, ensure `GLFW` and other dependencies are correctly set up.\n- If using `make`, try running `cmake --build . --config Release` instead.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faakrishtsp%2Freynolds-steering-behaviours","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Faakrishtsp%2Freynolds-steering-behaviours","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Faakrishtsp%2Freynolds-steering-behaviours/lists"}