{"id":24911376,"url":"https://github.com/kiwijuice56/rasterizer-3d-engine","last_synced_at":"2025-08-09T03:45:55.716Z","repository":{"id":49976522,"uuid":"474273459","full_name":"kiwijuice56/rasterizer-3d-engine","owner":"kiwijuice56","description":"3D rasterizer engine in Java","archived":false,"fork":false,"pushed_at":"2022-08-02T03:24:28.000Z","size":2571,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-03-28T02:53:04.990Z","etag":null,"topics":["3d","3d-engine","3d-graphics","java","raster-graphics","rasterization"],"latest_commit_sha":null,"homepage":"","language":"Java","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/kiwijuice56.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.md","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2022-03-26T07:22:11.000Z","updated_at":"2023-05-15T18:15:08.000Z","dependencies_parsed_at":"2022-09-05T15:50:21.060Z","dependency_job_id":null,"html_url":"https://github.com/kiwijuice56/rasterizer-3d-engine","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/kiwijuice56/rasterizer-3d-engine","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiwijuice56%2Frasterizer-3d-engine","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiwijuice56%2Frasterizer-3d-engine/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiwijuice56%2Frasterizer-3d-engine/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiwijuice56%2Frasterizer-3d-engine/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/kiwijuice56","download_url":"https://codeload.github.com/kiwijuice56/rasterizer-3d-engine/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/kiwijuice56%2Frasterizer-3d-engine/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269527577,"owners_count":24432441,"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","status":"online","status_checked_at":"2025-08-09T02:00:10.424Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":["3d","3d-engine","3d-graphics","java","raster-graphics","rasterization"],"created_at":"2025-02-02T04:19:45.309Z","updated_at":"2025-08-09T03:45:55.636Z","avatar_url":"https://github.com/kiwijuice56.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# critter-3d-engine\nA basic 3D engine implemented with Java.\nThis program was originally interfaced with the AP Computer Science \"GridWorld\" project, but the logic of the\nengine was isolated from the project for performance and other limitations.\nThe original assignment that was developed with this project is located [here](https://docs.google.com/document/d/1MLoiBiA2aGNJt47wUIgn6nQSzdvB5Oo5CMJqowSeZwI/edit?usp=sharing).\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"resources/sample2.png\" alt=\"Sample execution\"/\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cb\u003eUpgraded execution\u003c/b\u003e\u003c/p\u003e\n\n\n\u003cp align=\"center\"\u003e\n  \u003cimg src=\"resources/sample.png\" alt=\"Original execution with GridWorld\"/\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\u003cb\u003eOriginal execution with GridWorld\u003c/b\u003e\u003c/p\u003e\n\n\n## Features\n- Basic shading with customizable lights and meshes\n- .OBJ importer to preview any models\n- Proper depth buffering\n- UV mapping and texturing\n\n## How to use\nScenes can be configured in the `MainWindow.java` class. A complete demonstration of importing and\ninitializing models can be found in the `main` function.\n\nPlace any textures and .OBJ files inside the `resources` folder.\n\n.OBJ files can easily be exported from any 3D editing program and imported to the engine.\nIf using Blender, ensure that the export includes UV data and \"Keep Vertex Order\" is enabled.\nTextures must be PNG-32.\n\n## Attribution\n- Cube texture sourced from [Wikipedia](https://en.wikipedia.org/wiki/Cube_mapping)\n- Seashell model and texture sourced from [BlenderBoom](https://www.blenderboom.com/product/sea_shell/)\n- Utah teapot model sourced from [The University of Utah Website](https://www.cs.utah.edu/~natevm/newell_teaset/newell_teaset.zip)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkiwijuice56%2Frasterizer-3d-engine","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkiwijuice56%2Frasterizer-3d-engine","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkiwijuice56%2Frasterizer-3d-engine/lists"}