Info on making 24-bit fractals (other than the light transform outputs) ------------------------------------------------------------------------ ------------------------------------------------------------------------ ------------------------------------------------------------------------ Entry #209 of SCI.FRACTALS Re: 24 bit fractals From: cwm@Turing.ORG (Chris W. Morris) Date: 30 Nov 92 19:46:54 GMT In article <133960001@acf3.NYU.EDU> reznick@acf3.NYU.EDU (Daniel Reznick) writes: >With the advent of affordable 24 bit color for the PC, there exists >a very noticeable niche (read CHASM) which needs to be filled.. >A 24 bit fractal (or even just Mandelbrot) generator for the PC. >preferably running under Windows, as most 24 bit color boards >only supply drivers for Windows. >MOST preferabbly a 24 bit friendly WinFract. > >For now, I would be happy with any program which will produce 24 >bit fractal images on the PC, even under DOS, which hopefully would >then allow for some sort of 8-bit preview. As some of you may remember, I asked about this a while back. Althought I did not find a 'quick & easy' way to do this, I did find a way. Special thanks to Kerry Mitchell for the following information. I hope this proves of use to you all. -Chris W. Morris cwm@Turing.org ------------------------------------------------------------------------------- Date: Sun, 8 Nov 1992 23:24:56 -0500 (EST) From: MITCHELL@ACODVAX.LARC.NASA.GOV Subject: Re: high-color fractals To: cwm@turing.org I've been working with high- & true-color images for about a year now. As you realize, most fractal programs (like Fractint) don't support 16- or 24-bit color. Your basic escape-time fractal wouldn't benefit much from it anyway, since the dynamic range for most fractal zooms isn't more than a few hundred. That is, if you zoom in on any part of the Mandelbrot set, the range of iteration cycles that you'd need to color would span a few hundred or so. What I did was to come up with different ways to render various fractals. It's handy at this point to get an image-processing program, like Piclab, that can handle Targa format files. I also have CSHOW, a picture viewer that supports both high- & true-color. Essentially, what I do is generate 3 separate images for each fractal: one in reds, one in greens, and one in blues. Then, I use the image-processing program to combine these into one image. Since these pictures are not mapped like GIF files are, it's not a simple task to change to color palette. Fortunately, Piclab allows the user to negate any one color component (R, G, or B) or all 3. Thus, 8 perturbations are immediately available for each image. There are various ways to generate the red, green, and blue screens. If you use Fractint, you probably know about the 'outside=' parameters. The usual choice is 'iter', but there are also 'real', 'imag', 'mult', and 'summ'. An easy thing to do is the generate a fractal, say a Julia set for c = 0.28. Do this with outside=iter and color it in greens, say. Then, use outside=real with a blue palette. Now, try outside=imag in reds. Finally, lump them all together for the final picture. If you do this type of thing well, you can wind up with many thousands of colors in your 640 x 480 image. Whether or not you use Fractint, I find the key is to investigate other characteristics of the fractal to use for coloring. You can change the escape boundary from a circle to a horizontal or vertical band. You can use the 'decomp=' option to break each iteration band up into angular pieces. You can write your own routines to decompose each band by the size of the iterate once it diverges. Etc., etc., etc. For those points that don't diverge, Fractint offers a few different coloring options. One thing I like to do is find a Julia set that is largely 'black' (points that don't diverge), and where the iterations are chaotic (not in one of the periodic areas). Then, I iterate to 150 (or so) and color the 'lake' areas according to 'inside=zmag' in one color. Then, I generate another image by iterating to 151 and using another color. Then, a third by iterating to 152. Since the orbits are chaotic, the bands of constant zmag will move from one iteration to the next, resulting in bands of color filling the otherwise bland lake. Anyway, there are some ideas to get you going. Have fun and let me know if you come up with anything interesting. Kerry Mitchell mitchell@acodkris.larc.nasa.gov ----------------------------------------------------------------------------- ----------------------------------------------------------------------------- ----------------------------------------------------------------------------- summary of above techniques, explained better, with hints: (by dan goldwater): the above technique works fairly well. to simplify the above, basically, one way to make a 24bit image would be to generate three images of the same julia set (they work well), one using the outside=real option, one with outside=imag, and one with outside=mult (or summ, iter, etc). then, use an all red palette on the first image, an all green pallete on the second, and an all blue pallete on the third (try using 'sf5', 'sf6' and 'sf7' keys in color cycling mode: they have simple black to red, black to green, and black to blue gradients). after you save the three images, you must then put them together into a single image. a program such as piclab, photostyler, or some sort of graphics/retouching program should do. in order to not have the final image be too bright, first darken each of the images a bit. how much to do this varies. darken between 20% and 50% depending on how bright the original is. for best results, the contrast will usually have to be adjusted a bit too. then, overlay all three images on top of each other, and enjoy! additional notes: for julia sets, the outside=real, imag, mult, and summ, and decomp=256 generate the best results using the above method. especially good results can be obtained with the following two combinations: real, mult, and imag. mult, decomp, and imag. when using an imag and a real in the same image, make sure to have one image with black in the center and color on the outside, and the other with black on the outside and color on the inside. if you want to obtain best results by adjusting contrast, etc, you will usually only need to do so on the outside=real and imag images, as those types often do not have very much contrast at all. the other three types generally have a wide range of color values. however, you will still want to some darkening of the images in most cases. new: i made some .map files and .par file for 24bit images. the .map files redin.map, redout.map, greenin.map, greenout.map, bluein.map, blueout.map are just simple black-to-color gradients, one with black on the outside, the other with black on the inside. also, in dcontpot.par, try the 24bit-1 images for a nice 24bit image (you still have to do all the overlaying yourself). -dan goldwater- daniel_goldwater@brown.edu