From MediaWiki
Jump to: navigation, search

Objective of this tutorial

In this tutorial I want to introduce a whole family of random-generators which help you to generate an endless number of flames as starting point. You will see, that are not only Random-Flame-Generators, but also Random-Symmetry-Generators and Random-Color-Generators. I also want to speak about the intention about all of this, and show some not so obvious features.


Intention behind Random-Flame-Generators

Random-Flame-Generators are a nice way to

  1. get started at all. E.g. if you have no clue what do to and what can be done, random-flames are one possible entry to the beautiful world of flame-fractals
  2. just play around and relax (especially when you use the Interactive Renderer, you can see how the image is create and immediately switch to the next random flame)
  3. get inspired
  4. explore new formula-combinations

So, primarily, random-flames are thought to be educational or just fun, but they are not be intended to be artworks which you can claim as your work.

Please do not use raw randomly generated flames - tweak them instead

There are numerous fractal artist out who create fantastic fractal art. Even if the Random-Flame-Generators of JWildfire can also create visually appealing images (which someone maybe also could treat as some kind of art), it is absolutely not intended to create actual fractal art.

So, it is also not intended to render (unmodified) randomly generated flames and claim them as your work, or even worse, put your copyright sign on it.

If you want to claim as your work, you have to work on them, i. e. you have to tweak them. But, you will find out, that tweaking is can be most the fun of it, because you learn something during this process, always.

Generating random flames in the Main Editor

Each time you start the flame-fractal-editor you will see two or three randomly generated fractals depending on the version of the software you are using. I. e., the Random-Flame-Generator is fired up each time you start the application. But, you can invoke it all the time, but beware, invoking the Random-Flame-Generator in the main-editor erases all flames you were currently working on by default. (this can be changed in the Preferences, see below).

To generate a new list of random flames (the number of flames it generates can be adjusted in the Preferences, see below), just press the Random batch-button. If you see nothing visually appealing, just hit the button again, and again... etc.

Choosing a certain Random-generator

In flame-fractals, as well as in any other fractals, there are endless possibilities. This means also that there are endless possibilities to create no (visual) fractal image at all. Or endless possibilities of creating visually non-appealing images (e. g. showing only some noise). To simplify the search for "interesting shapes", in JWildfire there are numerous specialized random-generators which create random flames of a certain "style". I.e. they have the "knowledge" to create some base shape and create variations of this.

At the top of the editor window to the right of the random batch button you will see a random generator drop down menu that says All which contains all of the specialized generators. This is the default one, it internally choses each time it is invoked, a generator from the list and generates a new fractal. If you have a certain flame and want to know which generator was uses, just have a look at the title. It usually has the name of the (sub)generator as prefix

But, if you are interested in a special style, you can also restrict the generation to this style. Just select the style of your choice in the Random Generator-listbox and press the Random batch-button again.
Flametut05 randgen.jpg


You can combine randomly generated flames with random generated symmetry. So, there are not only Random-Flames-Generators, there are also additional algorithms, which may alter the post-symmetry of the generated random-flames.
There are the following choices:

  1. None: (No post-symmetry, just plain random flame)
  2. XAxis: generate a symmetry along the x-axis with randomly generated parameters
  3. YAxis: generate a symmetry along the y-axis with randomly generated parameters
  4. Point: generate a point-symmetry with randomly generated parameters
  5. All: randomly generate any symmetry with randomly generated parameters
  6. All (sparse): same as All, but with less probabilty, when chosen, only sometimes your flames have random post-symmetry

Choosing a certain Random-Symmetry-Generator

You may change the Random-Symmetry-Generator from the left listbox after the Symmetry/Gradient-label:
Flametut05 randgen symmetry.jpg


To generate gradients ("colors") for your fractals there are several choices, including again... random-generators, the Random-Gradient-Generators. There are currently the following choices:

  1. Strong hue: creates smooth gradients with strong staturated colors
  2. Stripes: creates gradients with many different colors at small area (looks like stripes)
  3. Monochrome: creates smooth monochrome (not gray) gradients
  4. Smooth: creates smooth gradients with smooth colors
  5. Two colors: creates gradients which contain of the transition of two colors
  6. All: choses randomly one actual generator as delegate

The default is the All-Random-Gradient-Generators

Choosing a certain Random-Gradient-Generator

You may also combine a certain Random-Gradient-Generator with your set of a Random-Flame-Generator and a Random-Symmetry-Generator, in order to do this, you may select it from the right listbox after the Symmetry/Gradient-label:
Flametut05 randgen colors.jpg

Special Random-Flame-Generators

Color Map

The Color Map-generator is a Meta-Random-Flame-Generator. I.e., it uses other Random-Flame-Generators to create a base-shape and combines this with an image map. The intention is to generate a mixture of an image and an image-map. Per default, the generator uses only randomly generated images, but you may specify a drawer, where it choses your images in a randomly manner.

To specify the path see the property tinaRandGenColorMapImagePath in the Preferences.

Because this generator is very "special", may take a significant amount of memory, and it may take some time to get any interesting result, it is not included in the All-generator, i. e. you must chose it explicitely to use it. Here is an example (pure random flame, using my own library of wallpapers as input-source):
Flametut05 colormap example.jpg


The Duality-Random-Flame-Generator is inteneded to explore new intersting combinations of formulas/variations and my be customized using the Preferences. It basically creates a flame with transforms, a first transform with a low weight (and some variations), and a seconds transform with a very high weight (and some other variations). This may lead to some very interesting combinations, here is an example (just linear and handkerchief, the params are provided in the Appendix):
Flametut05 duality example.jpg

You may change the following parameters in the Preferences:

  1. tinaRandGenDualityPreferedVariation: comma-separated list of the variation-names you prefer to play with
  2. tinaRandGenDualityPreferedVariationProbability1: probability to use one of the specified prefered variations in transform 1
  3. tinaRandGenDualityPreferedVariationProbability2: probability to use one of the specified prefered variations in transform 2

Browsing random flames in the Interactive Renderer

You may also generate random flames in the Interactive Renderer. But here it is more intended as "game" or a way to relax, than to actually create something.

You just watch the computer do things and enjoy. Just head out for the Next-button in order to get started. A random fractal will be generated and rendered. If you like it, enjoy how it gets more clear, you may finally save the params or send them to the Main Editor. If you don't like it, just press the Next-button again. And so on. You may also choose a prefered style here:
Flametut05 ir.jpg

Settings related to Random-Flame-Generators in the Preferences

Here is a summary of all settings related to Random-Flame-Generators, you may change in the Preferences.

  1. tinaRandomBatchSize: Number of randomly generated flames at each invocation of the Random batch-button
  2. tinaRandomBatchRefreshType: How to add to randomly generated flames to the editor. There are the following choices:
    1. CLEAR: clear all flames and replace by the new generated batch (This is the default)
    2. INSERT: insert the newly generated flames at the top of the flames-strip, i.e. keep all of the current flames
    3. APPEND: append the new flames at the bottom of the flames-strip, i.e. keep all of the current flames
  3. tinaRandomBatchBGColorRed, tinaRandomBatchBGColorGreen, tinaRandomBatchBGColorBlue: specify a background color for your random flames, defaults to black
  4. tinaRandGenDualityPreferedVariation: list of prefered variation names, used by the Duality-Randon-Flame-Generator
  5. tinaRandGenDualityPreferedVariationProbability1: probability to use one of the specified prefered variations in transform 1, used by the Duality-Randon-Flame-Generator
  6. tinaRandGenDualityPreferedVariationProbability2: probability to use one of the specified prefered variations in transform 2, used by the Duality-Randon-Flame-Generator
  7. tinaRandGenColorMapImagePath: path to images, used by the Color Map-Randon-Flame-Generator


We have learned that there a several Random-Flame-Generators (also refered as "styles") in JWildfire, and that they can be combined with Random-Symmetry-Generators and Random-Gradient-Generators. Some of those generators are somewhat special, and can be customized in the Preferences. You can not only generate random flames in the Main Editor, but also in the Interactive Renderer to enjoy them in a more playful way. There is a also somewhat of a codex to use random flames, never claim them to be your work without actually having tweaked (i. e. worked on) them.


Params of the Duality-Example-Flame

<flame name="Duality - 1170500856" smooth_gradient="0" version="JWildfire 2.40 (14.03.2015)" size="424 239" center="0.0 0.0" scale="82.26979558488263" rotate="0.0" filter="0.0" filter_kernel="GAUSSIAN" quality="25.0" background="0.0 0.0 0.0" bg_transparency="0" brightness="4.0" saturation="1.0" gamma="4.0" gamma_threshold="0.01" vibrancy="1.0" contrast="1.0" white_level="220.0" temporal_samples="1.0" cam_zoom="1.0" cam_pitch="0.0" cam_yaw="0.0" cam_persp="0.0" cam_xfocus="0.0" cam_yfocus="0.0" cam_zfocus="0.0" cam_pos_x="0.0" cam_pos_y="0.0" cam_pos_z="0.0" cam_zpos="0.0" cam_dof="0.0" cam_dof_area="0.5" cam_dof_exponent="2.0" cam_dof_shape="BUBBLE" cam_dof_scale="1.0" cam_dof_rotate="0.0" cam_dof_fade="1.0" shading_shading="FLAT" antialias_amount="0.75" antialias_radius="0.36" post_symmetry_type="NONE" post_symmetry_order="3" post_symmetry_centre_x="0.0" post_symmetry_centre_y="0.0" post_symmetry_distance="1.25" post_symmetry_rotation="6.0" frame="1" frame_count="300" mixer_mode="OFF" >
  <xform weight="37.934455950675904" color="0.74488914" mod_gamma="0.0" mod_gamma_speed="0.0" mod_contrast="0.0" mod_contrast_speed="0.0" mod_saturation="0.0" mod_saturation_speed="0.0" symmetry="0.0" linear="1.0" coefs="1.0 0.0 0.0 1.0 0.9055832835889546 -0.44456674373246763" chaos="1.0 1.0" />
  <xform weight="318.03442409671516" color="0.90312262" mod_gamma="0.0" mod_gamma_speed="0.0" mod_contrast="0.0" mod_contrast_speed="0.0" mod_saturation="0.0" mod_saturation_speed="0.0" symmetry="0.95" handkerchief="1.0" coefs="0.8536367387910008 -0.023644939722906183 0.023644939722906183 0.8536367387910008 0.5110657346940026 -0.5510758968043676" chaos="1.0 1.0" />
  <palette count="256" format="RGB" >