A modern 3D fractal visualizer built with Three.js featuring advanced shader-based fractals mapped onto various geometric shapes.
- Advanced Fractal Shaders: High-quality implementations of Mandelbrot, Julia, Burning Ship, and Tricorn fractals
- 3D Geometry Mapping: Fractals rendered on spheres, torus, planes, icosahedrons, and more
- Real-time Animation: Smooth time-based animations with customizable speed
- Interactive Controls: Mouse and keyboard navigation with zoom and rotation
- Dynamic Coloring: HSV-based coloring with smooth transitions and lighting effects
- Modern Architecture: Clean ES6+ modules with functional programming style
The classic fractal with dynamic perturbations and time-based movement.
Animated Julia sets with time-varying parameters for organic motion.
The burning ship fractal with absolute value modifications creating unique patterns.
The tricorn fractal with conjugate operations for distinctive mathematical beauty.
- Fractal Type: Select different fractal algorithms
- Geometry: Choose the 3D shape for fractal mapping
- Animation Speed: Control the speed of time-based animations
- Zoom: Adjust the fractal zoom level
- Click & Drag: Rotate the 3D object
- Mouse Wheel: Zoom in/out
- WASD/Arrow Keys: Move camera position
- +/-: Zoom in/out
- R: Reset camera to default position
- WebGL fragment shaders for high-performance fractal computation
- Smooth iteration counting with escape time algorithms
- Advanced HSV color space transitions
- Fresnel and rim lighting effects
- Vertex displacement for surface animation
- Optimized geometry with appropriate tessellation
npm install
npm run devOpen your browser to the local development server URL to view the fractal visualizer.
src/main.js: Main application class and Three.js setupsrc/materials/: Shader materials and fractal implementationssrc/shaders/: GLSL vertex and fragment shaderssrc/geometry/: 3D geometry factorysrc/controls/: User input handling and camera controls