{"id":20095955,"url":"https://github.com/avicted/galaxy_visualization_raylib","last_synced_at":"2025-04-10T19:41:04.841Z","repository":{"id":234819772,"uuid":"789557619","full_name":"Avicted/galaxy_visualization_raylib","owner":"Avicted","description":"100k real ( +100k random ) galaxies from a sector. Visualized with Raylib.","archived":false,"fork":false,"pushed_at":"2025-04-04T12:32:46.000Z","size":55502,"stargazers_count":87,"open_issues_count":3,"forks_count":6,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-04T13:38:24.417Z","etag":null,"topics":["c","cmake","galaxies","gamedev","linux","meson","physics","raylib"],"latest_commit_sha":null,"homepage":"","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/Avicted.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":"2024-04-20T22:14:49.000Z","updated_at":"2025-04-04T12:32:50.000Z","dependencies_parsed_at":"2025-01-15T07:12:03.054Z","dependency_job_id":"d4c59a3a-014b-42a4-81eb-4d9126a90d9d","html_url":"https://github.com/Avicted/galaxy_visualization_raylib","commit_stats":null,"previous_names":["avicted/galaxy_visualization_raylib"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Avicted%2Fgalaxy_visualization_raylib","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Avicted%2Fgalaxy_visualization_raylib/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Avicted%2Fgalaxy_visualization_raylib/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Avicted%2Fgalaxy_visualization_raylib/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Avicted","download_url":"https://codeload.github.com/Avicted/galaxy_visualization_raylib/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248281414,"owners_count":21077423,"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":["c","cmake","galaxies","gamedev","linux","meson","physics","raylib"],"created_at":"2024-11-13T16:57:09.053Z","updated_at":"2025-04-10T19:41:04.810Z","avatar_url":"https://github.com/Avicted.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Galaxy Visualization\n\nVisualization of 100,000 real galaxies in blue and 100,000 randomly distributed galaxies in red.\n\n## The Course\n\nThis project visualizes 100,000 real galaxies in blue and 100,000 randomly distributed galaxies in red. The data is sourced from the GPU programming course at  \n[Åbo Akademi University](https://studiehandboken.abo.fi/en/course/IT00CG19/19162?period=2024-2027)\n\nThis course teaches parallel programming using CUDA. \n\nThe assignment is to use CUDA to calculate 10 billion angles between galaxies and prove they are not randomly distributed. \nThe students must leverage the GPU for these calculations on their own using a supercomputer.\n\nThe students have to prove this on their own. \n\nThe expected runtime for the calculation is approximately 3 seconds.\n\n\nThis program is a visualization of the data, not the solution to the assignment.\n\n## Prerequisites\n\nThis project can be built using plain g++ through build.sh (raylib is the only dependency), Meson, CMake, or Make. \n\nBelow are the installation instructions for the required dependencies:\n\n### Dependencies\n\n- **Raylib**\n- **Base Development Tools** (e.g., `build-essential` on Ubuntu)\n- **Meson**\n- **CMake**\n- **Git**\n- **Clang** (or GCC)\n- **gdb** (optional)\n\n### Installation Commands\n\n#### Arch Linux\n\n```bash\nsudo pacman -S raylib base-devel meson git cmake clang\n```\n\n#### Ubuntu\n\n```bash\nsudo apt-get install -y raylib build-essential meson git cmake clang\n```\n\n### Build and Run the Project\n\nYou can choose from one of the following build systems:\n- Meson (F5 in VSCode)\n- Make with CMake\n- build.sh\n\n\n## Meson\n#### Setup:\n```bash\nmeson setup build --buildtype=release \n```\n\n#### Build:\n```bash\nmeson compile -C build\n```\n\n#### Run:\n```bash\n./build/galaxy_visualization_raylib\n```\n\n#### Clean:\n```bash\nmeson compile -C build --clean\n```\n\n\n## Make\n#### Build:\n```bash\nmake\n```\n\n#### Run:\n```bash\nmake run\n```\n\n#### Clean:\n```bash\nmake clean\n```\n\n\n\n##  Demo\n\n![demo](resources/images/galaxy_demo.gif \"galaxy_demo.gif\")\n\n---\n\n![screen](resources/images/screenshot.png \"screenshot.png\")\n\n## Patch Notes\n\n- Spacebar: Pauses the program.\n- Added Makefile for Linux.\n- Added Meson build system for Linux.\n- The Meson build now links against the system-installed Raylib.\n- Added earth model: https://science.nasa.gov/resource/earth-3d-model/ | Credit: NASA Visualization Technology Applications and Development (VTAD).\n- Added Free Look Mode.\n- Redshift data taken from: https://lweb.cfa.harvard.edu/~dfabricant/huchra/zcat/seyfert.dat\n- Added build.sh for easy building on Linux. \n- LShift to move slower in free look mode.","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favicted%2Fgalaxy_visualization_raylib","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Favicted%2Fgalaxy_visualization_raylib","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Favicted%2Fgalaxy_visualization_raylib/lists"}