Visualizations,
Simulations and Fractals

Python

Swift

Metal

Date: Spring 2022/Winter 2022

Information:

Description

  1.  Fractals:
  2. Simualtions:
  3. Visualizations:
    • Bezier-Curves (Swift)
    • Collatz-Conjecture (Swift)
    • Fibonacci-Sphere (Metal)
    • Heart of Maths (Metal)
    • Ray Casting (Swift)
    • Ray Marching (Swift, Implementation in Metal)

Reason for development

After I saw the first video about the Mandelbrot Set I was fascinated by fractals and after a short time I discovered the beauty of Math and how from simple rules a complex outcome can be produced.I also saw many interesting YouTube videos on creative programming and wanted to code them by myself. I have been highly inspired by among others Daniel Schiffman’s Coding Train (https://www.youtube.com/@TheCodingTrain/featured ), Numberphile (https://www.youtube.com/@numberphile) or Sebastian Lague (https://www.youtube.com/@SebastianLague)

What I learned

  • Basic Metal/Shader knowledge:
    • Render/Compute Pipelines
    • Buffers
    • Fragment/Vertex Shaders
    • Kernel computing
  • 2D Convolutions (Lenia)
  • Fractal Geometry
  • 3D Rendering (Ray Casting, Ray Marching)
  • Functioning of Bezier curves
  • Flocking behavior

Resources

1. Fractals
Play Video
L-System
2. Simulations
Play Video
Flock Simulation
Play Video
Agent Simulation
Play Video
Lenia
3. Visualizations
Play Video
Bezier Curves
Play Video
Fibonacci Sphere
Play Video
Heart Of Maths (animation)
Play Video
Ray Casting
Play Video
Ray Marching