{"id":25724429,"url":"https://github.com/xsn34kzx/raytracing-implementations","last_synced_at":"2026-05-15T06:38:38.406Z","repository":{"id":213901691,"uuid":"723245631","full_name":"xsn34kzx/raytracing-implementations","owner":"xsn34kzx","description":null,"archived":false,"fork":false,"pushed_at":"2024-05-27T21:59:00.000Z","size":112,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2024-05-28T07:57:02.308Z","etag":null,"topics":["cli","cpp","java","ray-tracing","ray-tracing-in-one-weekend","raytracer"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/xsn34kzx.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":"2023-11-25T03:51:29.000Z","updated_at":"2024-05-20T23:58:43.000Z","dependencies_parsed_at":"2024-01-05T09:27:36.121Z","dependency_job_id":"55ac6e08-258f-4894-a324-dfa9563d4acf","html_url":"https://github.com/xsn34kzx/raytracing-implementations","commit_stats":null,"previous_names":["xsn34kzx/raytracing-implementations"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xsn34kzx%2Fraytracing-implementations","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xsn34kzx%2Fraytracing-implementations/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xsn34kzx%2Fraytracing-implementations/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/xsn34kzx%2Fraytracing-implementations/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/xsn34kzx","download_url":"https://codeload.github.com/xsn34kzx/raytracing-implementations/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":240750383,"owners_count":19851658,"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":["cli","cpp","java","ray-tracing","ray-tracing-in-one-weekend","raytracer"],"created_at":"2025-02-25T21:31:53.616Z","updated_at":"2026-05-15T06:38:38.341Z","avatar_url":"https://github.com/xsn34kzx.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Project Description\nStemming from a Computer Graphics class assignment using Peter Shirley's\n*Ray Tracing in One Weekend* (Version 1.54 of the book specifically), this repo\naims to expand the functionality and optimization of the original by rewriting\nmy original class submission from the ground up. In addition to rewriting the\nproject in its original language of choice, C++, the repo also intends to host\nseveral different implementations written in other languages as a grounds for\nlearning or improving knowledge on a given language in addition to performance\nand syntax comparisons.\n\nThe project operates under the GNU Affero General Public License. Full details\nwithin ``LICENSE``.\n\n# Usage\nThe C++ portion of the project uses CMake (Version 3.22 \u003e= required), so its\nMakefile can be generated normally. After doing so, it can be compiled with\n``make``. \n\nThe program can be used to render a PPM file when provided the\ndesired width, height, and file name:\n```\nraytrace [width] [height] [desired filename...]\n```\n\nNote that ``make clean-img`` exists to clear all PPM files from the ``img``\nfolder generated post-build.\n\nThe Java portion of the project uses Gradle (Version 8.7 \u003e= required) under the\n``application`` plugin. As such, all ``application`` commands can be used, such\nas ``gradle run`` and ``gradle build``.\n\n# Current Goal(s)\n- Finish C++ rewrite with new features, improved syntax, and writing conventions\n    - [ ] Add multithreading\n    - [ ] Continue with the book series after \"One Weekend\" (OPTIONAL)\n- Write Rust implementation with parity to the finished C++ implementation\n\n# Credit\n- Shirley, Peter et al. [Ray Tracing in One Weekend][raytracing-git]\n\n\n[raytracing-git]: https://github.com/RayTracing/raytracing.github.io\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxsn34kzx%2Fraytracing-implementations","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fxsn34kzx%2Fraytracing-implementations","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fxsn34kzx%2Fraytracing-implementations/lists"}