Fract-ol is a visually stunning fractal generation program built in C. Utilizing the modern MLX42 graphics library, Fract-ol renders intricate fractals such as the Mandelbrot and Julia sets with real-time controls for zooming, panning, and iteration adjustments.
- Interactive Fractal Exploration: Zoom, pan, and modify iterations dynamically.
- Multiple Fractal Sets:
- Mandelbrot Set
- Julia Set (customizable with complex parameters)
- Smooth Color Transitions: Gradient-based colorization for an immersive visual experience.
- Keyboard & Mouse Controls: Intuitive inputs for seamless interaction.
- Customizable Parameters: Adjust the view and iterations to explore fractal depths.
- C Compiler: GCC, Clang, or similar.
- MLX42 Library: Ensure you have MLX42 installed. Follow the MLX42 documentation for setup.
- Libft: The custom
libft
library is a dependency.
- Clone the repository:
git clone git@github.com:NikolasGoulios/Fract-ol.git cd fract-ol
- Compile the project using the provided Makefile:
make
- Run the program:
./fractol [fractal_name] [optional parameters]
Command-line Arguments
Usage: ./fractol [fractol_name] [complex_number]
./fractol mandelbrot
./fractol julia -0.5 0.4
- Fractal Calculation: Implements fractal-specific formulas (Mandelbrot, Julia).
- Rendering: Converts fractal computations to pixel data.
- Event Handling: Supports keyboard and mouse interaction for real-time updates.
- Utility Functions: Manages cleanup, parsing, and initialization tasks.