More work done on fractal program + download link
Custom Julia Set position!
Input a custom position or middle mouse click anywhere to set the position. Middle mouse click somewhere with the Mandelbrot set active, and then switch the Fractal Type to Julia, and you'll get a Julia set with similar properties to that location on the Mandelbrot set!
Custom color ramp
Choose any PNG file on your computer to be used as the color ramp. The program will use the top row of pixels from that image as the color ramp to be sampled. A second example color ramp is included with the program.
Zoom out of the fractal instantly. Useful if you've zoomed in to choose a Julia set value from the Mandelbrot fractal and want to see the whole fractal.
Color ramp offset
Change the offset to the color ramp in order to get better control over which colors are rendered.
Quality of life improvements
More instructions have been added to the UI, and two settings you'll likely not need to bother with (length limit and minimum deviation) have been moved to advanced options.
Render the progress of the fractal rendering as it happens (currently investigating the thread safety of this)
Fix for early convergence detection
Previous version was only detecting convergence in the main cartioid. It should now detect convergence in a much larger amount of black areas (controlled by "Deviation Cycles" under advanced options) improving performance in a much wider variety of cases. You can also preview the areas in black that have had their convergence detected. With this fix, extremely high iteration levels (like 1,000,000) will have surprisingly good performance in most cases.
Update: as of 9/2/2021 I have refactored a lot of the code, splitting 5 of the responsibilities of the FractalDrawer class into multiple classes and structs. It took a while to bring it back to full functionality, but a nice side effect is that the interpretation of the fractal values into colors is now its own step, so you can change the offset, period, and color ramp texture without having to do all the rendering again (only the interpretation which is much faster). If you notice any bugs it's because I'm still working them out but the code is much nicer and more solid now so bugs in general should be easier to fix.
If the program doesn't work, try installing Visual C++ Redistributables 2019