Skip to content

Commit 3eb6313

Browse files
committed
Merge remote-tracking branch 'origin/master'
2 parents 0327c83 + 8fbdf0a commit 3eb6313

File tree

1 file changed

+7
-7
lines changed

1 file changed

+7
-7
lines changed

README.md

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,16 @@
1-
![image](output2.png)
1+
![image](render.png)
22

33
# rust-fractal
4-
A mandelbrot fractal image generator featuring perturbation theory. A high precision reference point is iterated at arbitrary precision and the differences from this are calculated in machine precision. This allows for a large speedup in image generation specifically at high zoom levels. This generator features:
4+
A mandelbrot fractal image generator featuring perturbation theory and series approximation. A high precision reference point is iterated at arbitrary precision and the differences from this are calculated in machine precision. This allows for a large speedup in image generation specifically at high zoom levels. This generator features:
55

66
- Perturbation based iteration count with glitch detection.
77
- Glitch fixing through automatic reference movement and recalculation.
8-
- Swappable types for use with perturbation, f32 and f64 which can go up to around a zoom level of 1e290.
9-
- Multithreading of core perturbation loop through rayon.
10-
- SIMD acceleration functions which (particularly with large iteration counts) can allow for 1.5 - 2.0x performance improvement.
11-
- Multiple colouring methods including smoothed iteration count and histogram.
8+
- Series approximation calculation to skip a large number of iterations.
9+
- Multithreading of core perturbation loops through rayon.
10+
- Multiple colouring methods including iteration, histogram and distance.
11+
- Double precision deltas allows for up to ~1e-290 zoom depth.
1212

1313
## Usage
14-
In order to change the fractal settings you need to be able to compile rust using the gnu-nightly toolchain. This is a dependency of the packed-simd crate. Furthermore, you need to be able to complie the rug crate. Look in the documentation for rug for more information on how to do this. Once all required dependencies have been installed, change the settings in the ```main.rs``` file located in ```src/```. Build and run the crate with:
14+
You need to be able to complie the 'rug' crate. Look in the documentation for rug for more information on how to do this. Once all required dependencies have been installed, change the settings in the ```main.rs``` file located in ```src/```. Build and run the crate with:
1515

1616
```cargo run --release```

0 commit comments

Comments
 (0)