 Slope Formula Tutorial for UltraFractal - Page 1

Introduction

The slope formulas provide a way to create realistic looking 3D textures and lighting effects similar to what can be obtained by ray tracing. Most slope formulas can be used with any coloring method. To obtain the 3D effects one of the lighting formulas must be used (Damien Jones' Lighting ucl, 3D Texturizer Enhanced III, or Direct Color Slope). The strange attractor slope formulas can only be used with one of the lighting coloring formulas. Examples will be provided to aid in understanding how the various formulas can be used. Most slope formulas have the following parameters:

• Bailout value - For convergent fractals this will be a small number such as 0.000001. This is represented as 1e-6. Detail will be lost if the bailout is too large. The bailout may have to be decreased for deep zooms. For divergent fractals (e.g. the Mandelbrot function), the bailout should be  large. If the bailout is too small color banding and loss of detail may occur (you may not even see an image).
• Divergent fractals are fractals like the classic Mandelbrot function. These are fractals, which upon iteration, "blow up" to give very large numbers, except in the central "lake" region. When the iterated value of the fractal exceeds the bailout value, iteration is stopped.
• Convergent fractals are fractals like the Newton function. Fractals of this type generally get smaller in value as they are iterated. Bailout for convergent fractals is determined by the difference between the value of the fractal and its previous iteration. When the difference is less than the bailout value, the iteration is stopped.
• Orbit Separation -  Determines how far apart the "stacked" orbits are that create the height details and lighting. Smaller values provide more realistic effects for most formulas. Formula specific adjustment is often necessary. Some special effects can be created with larger values. The orbit of a fractal is the "path" the values of the fractal make as the fractal is iterated. Iteration starting points that are close to each other often have orbits (paths) that are close to each other.
• Height Transfer - Slopes are calculated on the "stacked" orbits to determine the lighting effects. Height transfer applies a function to the height before the slope is calculated. It is useful for special effects.
• Height Pre-Scale - This is the ratio between height and distance. Larger values will exaggerate the lighting of highs and lows in the texture. This needs to be adjusted for most formulas.
• Height Post-Scale - This is similar to Height Pre-Scale but is applied after the transfer function. It is useful for special effects.
• Every Iteration - When set to "true", the slope is calculated for every iteration. This parameter is for special coloring methods that do calculations on every iteration. The default, which is "false" can be used with any of the lighting coloring methods.

Most of the non-attractor formulas have the parameter

• Height Value - Height calculations can use a number of methods. The Height value parameter allows a choice of methods.

Depending upon the formula, attractor slope formulas generate 2D, 3D and 4D strange attractors. They have the following parameters in common with the other slope formulas:

• Height Transfer
• Height Pre-Scale
• Height Post-Scale

In addition they have the following parameters:

• Apply Mapping - This is a Boolean parameter that must be checked if the user wants to apply transforms to the image.
• Oversize by (%) - This is visible only if Apply Mapping is checked. The formula uses an array containing a virtual viewing screen. This parameter increases the size or the virtual viewing screen.
• Hit Density - The hit density determines how many times the strange attractor formula is iterated to generate the image.
• Filter Width - Strange attractors generate a "shotgun pattern" of points. The formula can use Gaussian filtering to smooth the image.
• Orbit Closeness - Similar to Orbit Separation. Because a virtual viewing screen is used, orbits can never be closer than adjacent pixels (i.e., the smallest value is 1.0).
• Hit Value - Similar to Height Value. This determines what characteristic(s) of the virtual viewing screen array that is used to determine the height value at a given pixel.
• Hit Threshold - The "shotgun pattern" of points generated by the strange attractors will often create isolated points around the main image. This parameter can be used to decrease the number of isolated points.
• Pass slope values - Some coloring formulas, such as 3D Texturizer Enhanced III, have non-slope coloring options which can give interesting results if this parameter is not checked.
• Use Perspective - The 3D and 4D formulas will give more realistic looking images if this parameter is checked.
• X Center of Projection - Visible if Use Perspective is checked.
• Y Center of Projection - Visible if Use Perspective is checked.
• Z Center of Projection - Visible if Use Perspective is checked.
• Hide Parameters - This parameter hides the detailed default parameters for the strange attractor.
• Euler difference - The ODE attractors are attractors from the solution of simultaneous ordinary differential equations using Euler's finite difference method. This is the Euler finite difference value and should rarely be changed.
• Select preset coeffs - Many sets of coefficients are available for each of the strange attractor formulas. This parameter allows selection of the different sets.
• coefficient ... - These are the default parameters that are hidden by Hide Parameters.

The 3D attractor slope formulas have the following additional parameters:

• X Axis Rotation - Rotates the object around the X axis.
• Y Axis Rotation - Rotates the object around the Y axis.
• Rot Center X Offset - X coordinate of the rotation center.
• Rot Center Y Offset - Y coordinate of the rotation center.
• Rot Center Z Offset - Z coordinate of the rotation center.
• X Final Translation - Translation after all rotations to place the object (panning does not work with this formula).
• Y Final Translation - Translation after all rotations to place the object (panning does not work with this formula).
• Z Final Translation - Translation after all rotations to place the object (panning does not work with this formula). The Z translation effects the perspective view.

The 4D attractor slope formulas have the following additional parameters:

• YZ Plane Rotation - Rotates the object around the axis perpendicular to the YZ plane. This is the X axis.
• XZ Plane Rotation - Rotates the object around the axis perpendicular to the XZ plane. This is the Y axis.
• XW Plane Rotation - Rotates the object around the axis perpendicular to the XW plane. W is the 4th dimension.
• YW Plane Rotation - Rotates the object around the axis perpendicular to the YW plane. W is the 4th dimension.
• ZW Plane Rotation - Rotates the object around the axis perpendicular to the ZW plane. W is the 4th dimension.
• Rot Center X Offset - X coordinate of the rotation center.
• Rot Center Y Offset - Y coordinate of the rotation center.
• Rot Center Z Offset - Z coordinate of the rotation center.
• Rot Center W Offset - W coordinate of the rotation center.
• X Final Translation - Translation after all rotations to place the object (panning does not work with this formula).
• Y Final Translation - Translation after all rotations to place the object (panning does not work with this formula).
• Z Final Translation - Translation after all rotations to place the object (panning does not work with this formula). The Z translation effects the perspective view.

Several of the slope formulas for convergent fractals have the parameter

• Convergence Method - The traditional convergence method for most convergent fractals is the Newton method. Several other convergence methods can be used, which will give a different appearance to the fractal. This parameter allows selection of alternate convergence methods.

A brief discussion of three additional formulas that use slope techniques will be at the end of the tutorial. The formulas are Slope Apollonian Gasket, Indra's Pearls and Landscape. Slope Apollonian Gasket is a circle inversion formula and Indra's Pearls is a Kleinian Group formula. Separate tutorials for circle/sphere inversion formulas will be available soon.

Most formulas will have formula specific parameters.