{"id":43051359,"url":"https://github.com/subdavis/raster","last_synced_at":"2026-01-31T10:36:57.494Z","repository":{"id":78496165,"uuid":"53021229","full_name":"subdavis/raster","owner":"subdavis","description":null,"archived":false,"fork":false,"pushed_at":"2016-03-23T22:21:04.000Z","size":1828,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2024-06-11T23:38:57.433Z","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":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/subdavis.png","metadata":{"files":{"readme":"README.txt","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":"2016-03-03T04:46:03.000Z","updated_at":"2016-03-11T02:01:49.000Z","dependencies_parsed_at":"2023-03-12T04:23:59.783Z","dependency_job_id":null,"html_url":"https://github.com/subdavis/raster","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/subdavis/raster","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subdavis%2Fraster","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subdavis%2Fraster/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subdavis%2Fraster/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subdavis%2Fraster/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/subdavis","download_url":"https://codeload.github.com/subdavis/raster/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/subdavis%2Fraster/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28938780,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-31T10:18:23.202Z","status":"ssl_error","status_checked_at":"2026-01-31T10:18:22.693Z","response_time":128,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":"2026-01-31T10:36:56.917Z","updated_at":"2026-01-31T10:36:57.488Z","avatar_url":"https://github.com/subdavis.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":",-.----.                             ___                                                        \n\\    /  \\    By Brandon Davis      ,--.'|_                       ,--,                           \n;   :    \\   With C++ / G++        |  | :,'             __  ,-.,--.'|          ,----,           \n|   | .\\ :               .--.--.   :  : ' :           ,' ,'/ /||  |,         .'   .`|           \n.   : |: |   ,--.--.    /  /    '.;__,'  /     ,---.  '  | |' |`--'_      .'   .'  .'   ,---.   \n|   |  \\ :  /       \\  |  :  /`./|  |   |     /     \\ |  |   ,',' ,'|   ,---, '   ./   /     \\  \n|   : .  / .--.  .-. | |  :  ;_  :__,'| :    /    /  |'  :  /  '  | |   ;   | .'  /   /    /  | \n;   | |  \\  \\__\\/: . .  \\  \\    `. '  : |__ .    ' / ||  | '   |  | :   `---' /  ;--,.    ' / | \n|   | ;\\  \\ ,\" .--.; |   `----.   \\|  | '.'|'   ;   /|;  : |   '  : |__   /  /  / .`|'   ;   /| \n:   ' | \\.'/  /  ,.  |  /  /`--'  /;  :    ;'   |  / ||  , ;   |  | '.'|./__;     .' '   |  / | \n:   : :-' ;  :   .'   \\'--'.     / |  ,   / |   :    | ---'    ;  :    ;;   |  .'    |   :    | \n|   |.'   |  ,     .-./  `--'---'   ---`-'   \\   \\  /          |  ,   / `---'         \\   \\  /  \n`---'      `--`---'                           `----'            ---`-'                 `----'\n====================================== Compile Instructions =====================================\n|\n|\t+ fulfill build requirements below\n|\t+ unzip this archive\n|\t+ open a terminal and cd to the source directory\n|\t+ run \"./build.sh\" (or double-click in a file manager)\n|\t+ run \"./run.sh\"   (or double-click in a file manager)\n|\t+ images will be located in ./Images\n|\n======================================= Build Requirements ======================================\n|\n|   + Any OS with a BASH shell\n|   + The g++ compiler (I used version 5.2.1)\n|       * Can be installed on ubuntu-based systems via \"sudo apt-get install build-essential\"\n|\t+ IMPORTANT : armadillo matrix and linear algebra library\n|\t\t* Install libarmadillo from via the PPA: https://launchpad.net/ubuntu/+source/armadillo/\n|\t\t* \"sudo apt-get install libarmadillo-dev\" (~55MB)\n|       * Because the library has other dependencies, a package manager is STRONGLY recommended\n|   + An image viewer that supports the .ppm format (Already included with Ubuntu)\n|       * Alternatively, use imagemagick to create a .png from the .ppm output\n|       * \"sudo apt-get install imagemagick\"\n|       * \"cd Images\"\n|       * \"./convert.sh\"\n|   + OpenGL is NOT required.\n|\n======================================= Description of Parts ====================================\n| \n| Main:\n|     * Creates the room, the spheres, and puts them into worldspace.\n|     * Specifies the shading type.\n| \n| Mesh:\n|    * code for shading a mesh (given lights, a point, and a normal)\n|    * unit sphere generation code, since it produces a Mesh object\n|    * Transform method - takes 44 matrix and applies it on all triangles in the mesh\n|    * Each mesh has its own phong properties.\n|\n| Room:\n|    * Contains the main rasterization code, including the transfom pipeline and actual rasterization code\n|    * Does edge function computation\n|    * Contains top level transform funciton, which transforms all lights and meshes in the room\n|\n| Triangle:\n|    * Contains the actual code to do a transform.\n|    * Contains 3 v3's that correspond to the 3 triangle points\n|    * Contains 3 c++ std::vectors of normals that are used to compute the vertex normals\n| \n| v3:\n|    * Base vector class\n|    * implements vector/matrix transforms using armadillo library\n|\n| Renderer:\n|    * pixel color array buffer\n|    * Code for gamma correction, applied when the image is written to file\n|\n================================================================================================","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubdavis%2Fraster","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsubdavis%2Fraster","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsubdavis%2Fraster/lists"}