🖼️ A graphics program that visualizes 3D wireframe projections.
FdF is a foundational graphics project in the 42 curriculum that involves creating a program capable of rendering 3D wireframe models in a 2D environment. The project challenges students to use mathematical concepts such as isometric projections and implement fundamental graphics programming techniques, including managing the window display, handling user interactions, and drawing lines efficiently. By completing FdF, students gain a deeper understanding of computer graphics, coordinate transformations, and algorithm optimization.
- https://en.wikipedia.org/wiki/Rotation_matrix
- https://en.wikipedia.org/wiki/Digital_differential_analyzer_(graphics_algorithm)
- https://harm-smits.github.io/42docs/libs/minilibx
- MinilibX requires the following packages to be installed:
sudo apt-get install xorg libxext-dev zlib1g-dev
- Clone the repository recursively to include the MinilibX submodule:
git clone --recursive https://github.com/lareii/fdf.git
- Build the project:
make # 'make bonus' for bonus version
Run the program with a map file as an argument:
./fdf maps/42.fdf # './fdf_bonus <map_file> for bonus version.
Ta-da! 🥳 You should see a 3D wireframe projection of the map.
Watch the demo video to see the program in action.
Contributions are welcome! If you would like to contribute to this project, please open a pull request.