{"id":25834630,"url":"https://github.com/nihilantropy/cub3d","last_synced_at":"2026-06-15T09:32:07.370Z","repository":{"id":270602683,"uuid":"852765839","full_name":"Nihilantropy/Cub3D","owner":"Nihilantropy","description":"My first RayCaster with miniLibX","archived":false,"fork":false,"pushed_at":"2025-01-09T14:58:30.000Z","size":456,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-01T01:00:05.087Z","etag":null,"topics":["42","42school","c","coding","doom","project","raycasting","wolfenstein-3d"],"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/Nihilantropy.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":"2024-09-05T11:44:14.000Z","updated_at":"2025-02-26T11:28:14.000Z","dependencies_parsed_at":"2025-01-01T18:31:46.622Z","dependency_job_id":"ba2fdd08-9482-4c6b-9ed2-20ce2204f983","html_url":"https://github.com/Nihilantropy/Cub3D","commit_stats":null,"previous_names":["nihilantropy/cub3d"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Nihilantropy/Cub3D","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nihilantropy%2FCub3D","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nihilantropy%2FCub3D/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nihilantropy%2FCub3D/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nihilantropy%2FCub3D/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Nihilantropy","download_url":"https://codeload.github.com/Nihilantropy/Cub3D/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Nihilantropy%2FCub3D/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34357281,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-15T02:00:07.085Z","response_time":63,"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":["42","42school","c","coding","doom","project","raycasting","wolfenstein-3d"],"created_at":"2025-03-01T00:58:49.196Z","updated_at":"2026-06-15T09:32:07.322Z","avatar_url":"https://github.com/Nihilantropy.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"Here's the modified README.md that aligns more closely with the subject requirements:\n\n# 🎮 Cub3D - A Wolfenstein 3D-style Game Engine\n\n## 🎯 Project Overview\nWelcome to Cub3D, a project inspired by Wolfenstein 3D's rendering engine. Using raycasting, we transform a 2D map into an immersive 3D world, creating a dynamic view inside a maze.\n\n## 🛠️ Technical Requirements \nThe project must follow these specifications:\n- Written in C according to the Norm\n- Allowed functions:\n  - Basic: open, close, read, write, printf, malloc, free, perror, strerror, exit\n  - Math library (-lm)\n  - MinilibX library\n- Libft library is allowed\n\n## 🗺️ Map and Scene Description\nThe scene is described in a .cub file containing:\n- Wall textures for each direction:\n  - NO ./texture/walls/north_wall_texture.xpm\n  - SO ./texture/walls/south_wall_texture.xpm\n  - WE ./texture/walls/west_wall_texture.xpm\n  - EA ./texture/walls/east_wall_texture.xpm\n- Floor and ceiling colors (RGB format)\n- Map using these characters:\n  - '0' for empty spaces\n  - '1' for walls\n  - 'N', 'S', 'E' or 'W' for player's starting position and direction\n\n## 🎨 Raycasting Implementation\n\n### 📐 Core Mechanics\n1. For each screen column:\n   - Calculate ray direction using camera plane\n   - Determine wall intersections using DDA algorithm\n   - Calculate wall height based on perpendicular distance\n\n### 🎥 Display Requirements\n1. Texture Display:\n   - Different textures for each wall direction (N, S, E, W)\n   - Floor and ceiling colors\n   - Proper perspective correction\n\n## 🎮 Controls\n\n### 👾 Basic Controls\n- Movement: W, A, S, D keys\n- Camera rotation: Left/Right arrow keys\n- Exit: ESC key or window close button\n\n### 🏃‍♂️ Window Management\n- Smooth window handling (minimize, switch)\n- Clean exit on window close\n\n## 🚀 Getting Started\n\n### Building the Project\n```bash\nmake        # Compile the project\nmake clean  # Remove object files\nmake fclean # Remove object files and executable\nmake re     # Recompile everything\n```\n\n### Map Requirements\n- Maps must be closed/surrounded by walls\n- Only one player starting position\n- Invalid maps should return \"Error\\n\" with explicit message\n- Spaces are valid in maps\n\n## 🎨 Bonus Features\nOptional enhancements:\n- Wall collisions\n- Minimap system\n- Opening/closing doors\n- Animated sprites\n- Mouse-controlled camera rotation\n\n## 🎯 Key Challenges \u0026 Solutions\nCommon issues to watch for:\n- Texture alignment: Verify wall hit calculations\n- Wall distortion: Ensure proper perpendicular distance calculation\n- Map parsing: Handle all edge cases and spaces correctly\n\nRemember: Focus on creating a stable 3D visualization with clean, norm-compliant code! 🎮✨","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnihilantropy%2Fcub3d","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnihilantropy%2Fcub3d","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnihilantropy%2Fcub3d/lists"}