Fractal Architect 4 Help Index
Applies to:FA 3DFA 3D-AV
Fractal Architect 3D at release supports 330 variation types (more will be added in subsequent updates). The fractal rendering engine has to run on both CPUs and GPUs using OpenCL. Targeting rendering on GPUs requires that the render engine can only support a subset of this large library of variation types. The current limit for the rendering engine is either a maximum of 128 variation types or a maximum of 199 variation types plus their named variation parameters. For example the Legacy Flam3 variation set has 98 variation types and 198 variation types + their variation parameters.
A variation set is created by choosing a set of variation types from the variations library. You can create many variation sets with different mixes of variations in them.
Apophysis (a Windows app) uses a separate Windows DLL file for each variation type (beyond the built-in variation types). Apophysis can only load approximately 100 variation set DLL’s or it will crash at runtime. Apophysis users have to maintain the list of variation DLL’s that the app uses by moving them in and out of certain directory.
Fractal Architect 3D does not use this architecture and does not have a limit on the number of variation sets it can work with at a time. Each fractal file is not limited to a single variation set, for example, you may mix and match 2D and 3D fractals in the same file.
The app can handle many variation sets at once. For instance the Recently Opened tab of the Home Page window, can render thumbnails from many different variation sets.
Currently Fractal Architect requires that cross breeding of fractals be only allowed when both fractals are from the same variation set. In the Keyframes window, you must first pick which variation set to use for Loop/Morph Animation (in the event that the keyframes use multiple variation sets). You can also split up a file with many keyframes into separate fractal files - one file per variation set.
A custom OpenCL rendering engine is created for each variation set. This custom rendering engine must be compiled at runtime (which you may have noticed from the OpenCL Compile warning dialog popping up) before it can be used by FA for rendering.
The OpenCL rendering engine for each variation set is cached so that it does not have to be recreated every time you use the app. You can delete a variation set and it will be recreated as needed when you open any fractal file that referenced that variation set (see below).
The library for each used variation set is actually embedded in the fractal file, so that the saved fractals can always be rendered in the future (even though the original variation set might have been deleted). Note: earlier versions of Fractal Architect do not have the embedded variation set. They can still be opened and will use the Legacy Flam3 variation set. This also implies that you can send a fractal file to a friend and they can render that file (even though they probably have different variation sets they’ve created)
Unlike Apophysis, where only one single variation set can be used by the application at a time, Fractal Architect 3D can handle an unlimited number of variation sets.
Once created, a variation set cannot be changed. You can clone another variation set and make changes to the cloned copy before you save it (at which point the cloned set itself becomes immutable).
You can delete a variation set as any fractals that you created using that variation set, since for all practical purposes, each fractal file has its own copy of the variation set inside them.
Note: if a variation set is in use by the app, it will not be deletable. If a variation set is referenced by a fractal file in the Recently Opened list, that variation set will be locked.
You can export the variation set to a file and send that file to a friend. They can then import that file and create fractals from your variation set.
2D variation sets must always have the linear variation type and pre_blur variation type, as it is used by the application as the default variation type when creating new fractals.
3D variation sets also have the required linear variation type (which works the same as the Apophysis linear3D variation type). 3D variation sets have these required variation types:
These special 3D variation types are needed to support the Pseudo 3D rendering engine. The rendering engine supports only 2D transformation matrices for all transforms These special variation types are used to do 3D point transformations relative to the Z axis.
The render engine supports 3 classes of variation types. These classes of variation types are used to enforce an order of evaluation between the 3 classes.
On the Variation Set selection window are some utilities: