{"id":22438921,"url":"https://github.com/cypri1-dev/42_cub3d","last_synced_at":"2025-03-27T09:23:07.064Z","repository":{"id":257596699,"uuid":"851544344","full_name":"cypri1-dev/42_cub3D","owner":"cypri1-dev","description":"42_cube3D is a project from the 42 school inspired by Wolfenstein 3D. The goal is to create a 3D rendering engine in C using raycasting to simulate a 3D view in a 2D environment while exploring graphical programming concepts such as textures, perspective, and optimization.","archived":false,"fork":false,"pushed_at":"2024-10-08T13:58:14.000Z","size":114,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-01T14:18:15.786Z","etag":null,"topics":["cube3d","cube3d42","game","minilibx"],"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/cypri1-dev.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-03T09:37:48.000Z","updated_at":"2024-10-08T13:58:18.000Z","dependencies_parsed_at":"2024-09-17T16:58:11.026Z","dependency_job_id":"8ddc16b0-617b-4ffc-bba2-5b87dcb219c4","html_url":"https://github.com/cypri1-dev/42_cub3D","commit_stats":null,"previous_names":["cypri1-dev/42_cub3d"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cypri1-dev%2F42_cub3D","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cypri1-dev%2F42_cub3D/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cypri1-dev%2F42_cub3D/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cypri1-dev%2F42_cub3D/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cypri1-dev","download_url":"https://codeload.github.com/cypri1-dev/42_cub3D/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245815073,"owners_count":20676860,"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":["cube3d","cube3d42","game","minilibx"],"created_at":"2024-12-06T01:12:10.942Z","updated_at":"2025-03-27T09:23:07.046Z","avatar_url":"https://github.com/cypri1-dev.png","language":"C","funding_links":[],"categories":[],"sub_categories":[],"readme":"##\n\u003ch1\u003e\u003cimg src=\"https://raw.githubusercontent.com/ayogun/42-project-badges/main/covers/cover-cub3d.png\"\u003c/h1\u003e\n\n## Description\n42_cube3D is a project from the 42 school, inspired by the classic game Wolfenstein 3D, considered the first \"First Person Shooter\" (FPS) in gaming history. This project immerses you in the technique of raycasting to create a dynamic view within a maze, where the goal is to find your way while learning the basics of graphical development in C with MiniLibX.\n\n## 🚀 Objectives\n- Create a realistic 3D graphical representation of a maze using raycasting.\n- Use MiniLibX for window management, textures, and event handling.\n- Explore graphical programming concepts such as colors, textures, and perspective effects.\n\n## 🛠️ Features\n- 3D Rendering with Raycasting: Generating a 3D view from a 2D environment.\n- Texture Management: Different textures for each wall (north, south, east, west).\n- Player Controls: Movement with W, A, S, D keys and camera rotation with left/right arrow keys.\n- Color Management: Different colors for the floor and ceiling.\n- User Interaction: Clean exit from the application with the ESC key or the window's close button.\n\n## ⚙️ Installation\nTo install and run the project, follow these steps:\n1. Clone the repository:\n```\ngit clone https://github.com/cypri1-dev/42_cube3D.git\ncd 42_cube3D\n```\n2. Compile the project using the Makefile:\n```\nmake\n```\n3. Run the program with a game map as an argument:\n```\n./cub3D [map].cub\n```\n## 📄 Map Examples\nHere is an example of a minimal .cub file:\n```\nNO ./path_to_the_north_texture\nSO ./path_to_the_south_texture\nWE ./path_to_the_west_texture\nEA ./path_to_the_east_texture\nF 220,100,0\nC 225,30,0\n111111\n100001\n101101\n1000N1\n111111\n```\n## 🎮 Controls\n- Movement Keys: W, A, S, D.\n- Camera Rotation: Left/Right arrow keys.\n- Exit: Esc or click on the close button.\n\n##\nFeel free to add more details or make any modifications as needed!\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcypri1-dev%2F42_cub3d","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcypri1-dev%2F42_cub3d","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcypri1-dev%2F42_cub3d/lists"}