2023-01-18 20:59:23 +01:00
# A simple shader for AZUR aiming at computing the Mandelbrot and the Julia fractal sets
2023-01-17 12:29:49 +01:00
2023-01-18 20:59:23 +01:00
## What is this addin doing ?
2023-01-17 19:05:58 +01:00
2023-01-19 14:10:03 +01:00
This small demo is based on [Azur ](https://gitea.planet-casio.com/Lephenixnoir/Azur ). It uses its ultra fast rendering pipeline with specific a specific high speed quadratic calculation algorithm written by Lephenixnoir a,d able to handle both :
- Mandelbrot's set calculations : `Z_(n+1) = Z_n^2 + C` with `Z_0 = 0 + 0 i` and `C` covering the complex plan
2023-01-19 20:44:47 +01:00
![image ](https://gitea.planet-casio.com/Slyvtt/MandAzur/images/fxlink-image-2023.01.19-20h38-1.png )
2023-01-19 14:10:03 +01:00
- Julia's set calculations : `Z_(n+1) = Z_n^2 + C` with `C = A + B i` and `Z_n` covering the complex plan
2023-01-19 20:44:47 +01:00
![image ](https://gitea.planet-casio.com/Slyvtt/MandAzur/images/fxlink-image-2023.01.19-20h38-2.png )
2023-01-17 19:05:58 +01:00
2023-01-18 20:59:23 +01:00
Both Mandelbrot - *named as per Benoît MANDELBROT (1924-2010)* - and Julia - *named as per Gaston JULIA (1893-1978)* - fractals are based on the convergence determination of the equation `Z_(n+1) = Z_n^2 + C` .
2023-01-17 19:05:58 +01:00
2023-01-18 20:59:23 +01:00
## What can we do ?
2023-01-17 19:05:58 +01:00
2023-01-18 20:59:23 +01:00
Control keys are :
2023-01-19 13:19:26 +01:00
2023-01-19 14:10:03 +01:00
2023-01-19 20:44:47 +01:00
- [**EXIT**] to leave to the Operating System
2023-01-19 14:10:03 +01:00
2023-01-19 20:44:47 +01:00
- [**F1**] to [**F4**] to show/switch off some informations on the screen :
- [F1] : hide everything
- [F2] : minimal output FPS + rendering time
- [F3] : detailed update/rendering time
- [F4] : memory usage
2023-01-19 14:10:03 +01:00
2023-01-19 20:44:47 +01:00
- [**F5**]/[**F6**] : switch fractal mode
- [F5] : set Mandelbrot fractal
- [F6] : set Julia fractal
2023-01-19 14:10:03 +01:00
2023-01-19 20:44:47 +01:00
- [**OPTN**]/[**VARS**] : switch resolution
- [OPTN] : set resolution scale to 1, the fractals are computed on a 396x224 grid
- [VARS] : set resolution scale to 0.5 (2x2 pixels), the fractals are computed on a 198x112 grid (much faster but lower quality)
2023-01-17 12:29:49 +01:00
2023-01-19 13:19:26 +01:00
For the Julia set only :
2023-01-19 20:44:47 +01:00
- [**SHIFT**]+[**Directional Cross**] : change the value of the C value (`C = A + B i`)
- [**SHIFT+LEFT**] : A = A - 0.002
- [**SHIFT+RIGHT**] : A = A + 0.002
- [**SHIFT+DOWN**] : B = B - 0.002
- [**SHIFT+UP**] : B = B + 0.002
2023-01-19 14:10:03 +01:00
2023-01-19 13:19:26 +01:00
A and B are constrained in the range [-2.000 .. 2.000]
2023-01-19 20:44:47 +01:00
If you have a running session of `fxlink` :
- [**7**] to [**9**] to export the calculator screen to fxlink :
- [7] : take a screenshot
- [8] : start video output (not : this is just rendered in a SDL2 window, not recorded, OBS/ffmpeg may be your very best friends to do so)
- [9] : stop video output
2023-01-19 13:19:26 +01:00
Have fun !!!