Apo Treasures

Parallel Perspective

The existence of parallel perspective in Apophysis 3D hack is a gem of a treasure for those who enjoy stereoscopic images. It makes the process of setting up good views and getting stereo results that are consistently usable without eye-strain very easy. It is also the quality that makes it possible to create 3D Webscapes textures with Apophysis 3D hack.

Definition

Parallel Perspective is the special case where perspective lines DO NOT CONVERGE as distance from the viewpoint increases. It is different from normal perspective where perspective lines converge at a defined infinity point or points in the picture or off-picture but relating to the photo, drawing or illustration. Perspective lines themselves are usually not part of a picture but are an illustration to help us understand the effect of perspective. Another way of describing normal perspective is the observation that objects farther away appear smaller than the same objects nearby. By contrast in parallel perspective no matter how far away the object is it remains visibly the same size.

Parallel perspective can take a number of forms. Some location maps use a kind of parallel perspective. There might be a marker saying, “you are here,” and trails or roads lead to different areas within a region that is illustrated on the map. If it were a public park, little structure symbols might be used to show where bathrooms are available or camping sites, or picnic facilities exist. The symbols would be the same size for any location on the map. Trees and roads would be drawn to the same scale everywhere on the map.

Another kind of parallel perspective is used in what is termed “primitive art” which is a style typical of times in the past and the tendency of a number of modern artists to represent things in a simple style without attempting to portray a realistic perspective. Typically they show placid scenes of small towns or farms and houses. A painting might show several streets of a town with beautifully painted buildings on each street. The buildings pictured on a street at the back of the town would be essentially the same scale as buildings on the closest nearby street. Farm scenes might show cows and horses at the same size whether they are close to a road in the foreground or at the back of a distant fenced field.

Here are some images illustrating Parallel Perspective and comparing it to Normal Perspective. The first is Normal Perspective as you would experience in using a digital camera.

Normal Perspective and Stereo Camera

Normal Perspective and Stereo Camera

Normal Perspective lines spread out from the viewpoint. Nearby objects thus appear larger than farther ones. Normal every-day reality is experienced this way.

Parallel Perspective is uniquely different and fun to work with.

Parallel Perspective

Parallel Perspective

It’s easy to see that in order to capture a larger Fractal, the virtual camera’s Render Size is increased enough to show as much of the Fractal as you might want. Distant portions of the fractal have the same size as a similar feature close to the virtual camera.

This next picture illustrates how a stereo image is captured in Apophysis.

Stereo Parallel Perspective

Stereo Parallel Perspective

Apophysis Perspective

In the Adjust Panel <F5> of the 3D hack version of the program there is a control called “Perspective.” It’s purpose is to simulate the effect of normal perspective so that nearby objects seem larger than the same object farther away. The parameters for this setting can be adjusted to values that distort the image to an extreme degree. You could call that a “special effect” which generally you won’t want to use.

For most stereoscopic purposes the setting should be set to Perspective = 0 and left there. The following illustrations will show what this control does and why it is best left at 0 or only used in small amounts.

Stereoscopic images are generally pairs of very similar pictures. The precise differences between them are what make them stereoscopic. Their purpose is to provide image data to each eye that the brain can process into a recognition of depth placement in a volume of space rather than just placement on a flat surface. Yet the images themselves are flat because each eye has only a single perspective.

What changes are there between each eye’s perspective? If they are done correctly, there will be ONLY one definable change – a slight horizontal displacement of each image detail according to relative distance from the camera or viewpoint. Any changes other than strictly horizontal placement changes are errors and cause various degrees of eye stress as the mind attempts to connect the information in each picture in a recognizable way.

In order to render good stereo images with Apophysis the above information is important. When the Perspective setting is something other than 0, the result is that some image information will shift up or down during the attempt to define two stereo viewpoints.

Here’s an image designed by changing various parameters from those provided in a tutorial called Xaos Bubbles Tutorial, written by Nightmares06. Specifically, in Transform 1 the variation for Hexes=1 is changed to Hexes=0 and instead the Variation Flower=6 is used, along with the corresponding Variables, Petals=4 and Holes=1.125.

Correct Stereo Pair

Correct Stereo Pair

If you wish to try and duplicate these results, note that instead of setting the Pitch to 60 as instructed in the tutorial, the Pitch here is set to 90 and the Final Transform is enabled and used to create post_rotate_x = 0.333. This change approximates the desired view-angle and specifically makes it possible to use the Yaw control to establish accurate stereo-camera viewpoints.

Adjust Panel Settings

Adjust Panel Settings

Transform Editor FX enabled

Transform Editor FX enabled

The next picture has the value, Perspective=0.1. Note that the nearby flower is larger than it’s corresponding flower in the distance. This gives a nice perspective effect.

Perspective=0.1

Perspective = 0.1

The image can be viewed in stereo because the discrepancies are minimal, but they do exist. Note the horizontal reference lines and the arrows which point out where image data has moved slightly up or down between the two side views.

As the Perspective value is increased or the Yaw is increased the errors tend to increase. The next illustration is not intended for stereo viewing as it uses a Yaw difference = 40 degree angle. This first picture has Perspective=0.1. Notice that the errors have increased especially for more distant background or closer foreground objects.

Perspective=0.1, Extreme Yaw angle

Perspective = 0.1, Extreme Yaw angle

The following final image has the same extreme Yaw difference angle=40 (+20 and -20), but this time there is NO perspective. The setting is Perspective=0. In this case, even though the change of angle is extreme the image details remain perfectly horizontal, they don’t move up or down at all. This illustrates what is happening in Apophysis and how to get excellent stereo results. It is possible to introduce small amounts of perspective for the effect as long as you keep it really small.

Extreme Yaw difference, no perspective

Extreme Yaw difference, no perspective

 

Add a Comment

Apo Bugs

I encounter various bugs in Apo quite often. That’s part of the nature of the program and a person learns to work around those bugs. For beginners who haven’t encountered them yet, they can prove puzzling or confusing.

Eventually I hope to list as many of them here as can be identified. Maybe it will help beginners and maybe a programmer working on updating the code will find it useful in making the program better! If you know of specific bugs and a work-around method, feel free to comment about them here, or send me an email with the information.

I’ll start with a simple one.

While working in the “Adjust Panel” one can enter numerical values directly by selecting the value already there, then typing in the new value. For some reason this process frequently stops working. The program fails to update, despite entering the number and clicking ENTER on the keyboard.

That is partly why I wrote the Rotate Pitch Script because I found that when the above problem occurs, the script will force the values to update correctly.

One effect of the bug is that as you work with Pitch=90 and make edits, it is useful to occasionally look at the fractal from a different vantage point such as Pitch=0. Often after switching back and forth by manually entering a value, the program refuses to recognize the activity, but the little Pitch value window will show the value I’ve entered, making it seem as if it changed, but the preview remains the same.

A similar effect of this bug is that after working at Pitch=90, then opening the Mutation panel, the central window in that panel will show the current side view, but the previews are all rendered from Pitch=0. Often if one of those Mutation options is clicked, the main preview will redraw showing the new flame from a Pitch=0 direction, but the Pitch control box fails to update and still shows Pitch=90.

This causes confusion because it is false information.

To verify the actual value, click on the word “Pitch” and start to slowly drag the mouse either left or right. This forces the value to update and begin incrementing as you drag. If it has been showing false information of Pitch=90 while the program is really working from Pitch=0, then this click drag action will cause the values to instantly change from the visible but false 90, showing that now you are adjusting values near Pitch=0.

There seems to be only two solutions to this issue. Use a script to control the values, or use the click-drag action of your mouse. The issue with Click-drag is that it can be difficult to arrive at the precise value you’re trying to get to.

 

Add a Comment

Announcement

Announcement: On the afternoon of July 10th, Friday, Apophysis 3D Revealed was a short 6 minute feature during the Digital Theater Presentation at the NSA (National Stereoscopic Association) 35th annual convention in Mesa Arizona. Including a title sequence and several ending credit slides, there are a total of 44 image pairs.

 

Add a Comment

Batch Rendering

There are several ways of rendering images from Apophysis settings. With stereo work I usually have at least two pictures and some design sessions yield more than that as saved parameters waiting rendering time. It’s cool to set it to render then go to bed, or off to some appointment.

On the main panel, under the Flame menu there is an option to Render All Flames. It usually works for me, but some have said it often fails. You might want to try it for simple convenience but there are tricks to how it works that might help.

  • It is designed to render all flames that exist within an opened flame file, where you see the named parameter sets in the Main panel file menu.
  • When you activate it and provide directions where to save the renders, it goes about its job. If you go with whatever image size is in the parameters be aware that it will read and use the first set, and all other files will be rendered at the same size! If you set a size, all files will render to that adjusted size.
  • Just to make sure it has the best chance of working, after saving my various parameters, I will open some other flame file, then navigate back to the one I want to render from and make sure the top file in the list is highlighted and open in the preview. Then I say “go”.
  • If the render sizes are large and you have more than one parameter set, it can be puzzling because the information about progress won’t show up for a long time. I haven’t had it crash but I have had it stay blank and unresponsive till all but the last render is taking place.
  • If you really want to render a large file, do them one at a time so you can keep track of the activity.

That last tip is because I think there was a problem one time when it was pointing at some other parameter set than the top one. I haven’t tried to duplicate the problem so just in case I try to keep a clean approach to rendering.

It’s great to come back later and find one or several stereo pairs waiting to be viewed!

Some folks have authored scripts for batch renders so in the future I might link to those resources after giving them a tryout.

 

Add a Comment

Gradient Files

ApoMap

This little program is helpful in designing your own gradients but it’s not the only way to go.

In the Adjust panel under the Gradient tab there are four small buttons on the bottom right corner. The first one is “copy gradient to clipboard.” The next is “paste gradient from clipboard.” The third one is “open gradient browser.” The last one says “Smooth Palette.”

The first two are pretty self explanatory but it might be helpful to understand the last two. The gradient browser is a handy tool to open and explore previously saved collections of gradients for Apophysis. When you save gradients from the program it saves them in container files called UGR files. Each one can contain a large number of gradients identified with names. It is helpful to organize them so that only similar gradients exist in each one but that’s up to you to organize.

The smooth palette button opens a menu where you can navigate to any bmp or jpg image file. Once you’ve selected an image file, the program will analyze the file and create a new gradient based on colors that it samples at random from the image. For best results, prepare ahead of time by copying just small portions of image files from which to sample. Often a single source image can provide many smaller color samples.

You can use any digital image as a source for gradients, including painting small image files in a graphics program. This gives you a bit more control over the results.

Once the gradient is made, it loads into Apo and your Flame will be painted with the new colors. Remember to Right-click the gradient area and save the gradient in a convenient UGR file.

Gradients can be loaded into ApoMap from the clipboard, which makes it convenient for fine tuning a gradient to match your current flame, or you can design new gradients from scratch by drawing with the RGB tool.

The thing to be aware of is that ApoMap saves gradients in Fractint map files instead of UGR files. There is only one gradient in each map file. The gradient browser can open both UGR and MAP files.  A directory for Map files can fill up with a couple dozen files quickly, but using them in Apo one at a time is not very convenient. To get better organized it’s handy to stuff all those Map files into one or two UGR files.

Datagram has written a handy utility that will do exactly that. It works real well and is very convenient and It’s called the Map-to-UGR-Converter-Compiler.

 

Add a Comment

ApoMap Gradients

Skill Level: Beginner to Intermediate

Quick Facts

  • ApoMap is a unique gradient editor
  • Cool RGB Graph editor – could be friendlier to use
  • Making smooth gradients from image samples is easy
  • Saves gradients as Fractint Map files

The Program Interface

Here are screen shots of the main menus

The File Menu options

The File Menu options

The Edit Menu:

Edit Menu options

Edit Menu options

The Process Menu is perhaps more interesting:

Process Menu Options

Process Menu Options

These processes help to edit and modify a gradient.

The Graph Editor

Here is an example of a gradient designed in the Graph editor. The picture shows the editor aligned with the gradient to show how the RGB lines correspond to the colors.

Graph Editor in action

Graph Editor in action

Design Process

It can take a few tries to get the colors right, but it is a really basic and easy process.

Green Spike gradient, Step 1

Green Spike gradient, Step 1

The Graph editor works by drawing one line at a time with any one of the three drawing pens. It only draws straight lines, click a place to start the line and click where it should end. Curves can be made by making many short lines consecutively and changing the angle of each one.

Colors are formed by mixing the amount of each primary color. Red and Green make Yellow, Red and Blue make purple, Blue and Green make Cyan.

Adding Some Interest with a color spike

Adding Some Interest with a color spike

Grays are made with roughly equal amounts of each color. In this example Red is the first line to be drawn. The other lines are the random gradient generated automatically.

Starting a Gray gradient

Starting a Gray gradient

Next, trace over the Red line using the Green pen.

Trace over the Red line with the Green Pen

Trace over the Red line with the Green Pen

The last step completes the basic Gray gradient.

The Gray gradient completed

The Gray gradient completed

Sometimes it is interesting to add a bit of color to the grays just to see where it shows up in the Flame fractal.

Adding Color markers

Adding Color markers

Saving the Gradients

It is important to save the finished gradients so it will be available whenever it is needed in the future. Alternatively it can be copied to the clipboard and pasted it into Apophysis directly. The new gradient can be saved from either program.

ApoMap saves gradients as Fractint Map files.

Saving Map Files

Saving Map Files

The Graph editor is small so accuracy can be difficult, especially at the side edges. One way to work is to watch the numbers in the little boxes next to the color pens. The numbers provide a means to know precisely where the the click will take place. The starting number at the left side is 0, and the ending number on the right is 256.

If it is important that a gradient blend smoothly where the end and beginning meet, try the Rotation control in the Adjust panel. Rotate the edge gradient away from the edges, then edit the colors so there is no abrupt change.

Rotate gradient edges towards the center to smooth it

Rotate gradient edges towards the center to smooth it

There is a sharp discontinuity where the former edge areas meet up after it has been rotated.

Former edges are discontinuous

Former edges are discontinuous

Below they have been smoothed out

Gradient now blends smoothly

Gradient now blends smoothly

 

Add a Comment

Nature Gradients

Skill Level: Beginner

Quick Facts

  • Creating sample pictures

  • Using ApoMap’s Smooth Palette function

  • Converting from Map files to UGR

  • Download the Gradients

Nature Pictures

To start with find a series of nature pictures you like, especially ones that have interesting colors. Most pictures have too much detail which can result in a gradient with too many colors and high contrast. The idea here is to select small parts of these pictures to restrict the gradient process to a more suitable and desired range.

Things to look for

Contrasty pictures have too much difference between dark and light areas. In Apophysis each rendering is usually against a solid background. If that color is dark, the best gradients are mostly light shades. Dark colors on a dark background tend to disappear and not show up. That can produce interesting effects but the bottom line is that the whole fractal is not showing. Obviously light backgrounds require dark shades in a fractal gradient.

Be aware of these requirements as you sample pictures and plan ways to organize the results so it is easy to find the right gradients later. Choose samples from small areas where there is not too great a contrast. Pick out some with light shades, some that are dark, others that are predominantly some color. If necessary reduce the contrast in the sample before saving it.

Sample pictures can be processed to make a Smooth Palette more than once because the method is random and will create different patterns each time.

Bright color source

Bright color source

Start by creating a small selection box on the image. Copy and paste the results into a new image and save them as a JPG or BMP. Go back to the source image and move the little box to a new area and repeat the copy/paste/save routine. Here are the samples collected from this image.

Small Sample Images

Small Sample Images

Here is the gradient from one of these samples

Orange-Yellow Gradient

Orange-Yellow Gradient

Here’s another good source image to sample:

Evening Sky Source Image

Evening Sky Source Image

And the samples acquired:

Sky Samples

Sky Samples

The finished gradients are available as a downloadable zip file. Here are more of the sources and samples:

Mountain Frog Source

Mountain Frog Source

These samples include some Frogskin!

Mountain Frog Samples

Mountain Frog Samples

Grass Samples

Grass Samples

River Samples

River Samples

Sky Samples

Sky Samples

Sunset Samples

Sunset Samples

The sky and Sunset pictures are all from Central Oregon.

Leaf Samples

Leaf Samples

Making Gradients

Now open up ApoMap and click on the Smooth Palette Button.

Smooth Palette Button

Smooth Palette Button

Navigate to your sample images, pick one out then wait for the process to finish. In a few moments a gradient will open up in the program. Save it or copy it to the clipboard for use in Apophysis. Continue making gradients from the samples until there is a good collection of Map files.

A special converter utility called Map Converter.exe will convert all those many single-gradient Map files into a convenient UGR file. Download the utility from Datagram. Place this utility in the same folder as ApoMap – for convenience. Double click to operate the program. Navigate to the list of Map files and check the check boxes for which ones to include, and give it an appropriate name. It works fast and easily.

To use these in Apophysis, go to the Gradient tab in the Adjust panel and find the button to open the Gradient browser. Use that browser to locate the new UGR file and open it up. Click once on a name, or hover the mouse above it to show a sample of the gradient. Double click the gradient name to transfer the gradient into Apophysis.

The finished collection of gradients have been converted to UGR files, along with many more samples than are shown here. They are available on my devArt gallery.

Thanks for visiting!

 

Add a Comment

Rendering By The Slice

There are two ways to think about the “slice function”…

One way is that Apophysis does it’s own internal slicing when you have an image render that requires more memory than you have installed on your computer. Say your image render needs 500 MB but you only have 364 MB of physical RAM available. If you check the box to limit the memory usage, Apo will automatically break the task into “slices” and render them one at a time and compile them together into one image when the process is done. Say you check it and use the value of 128 MB as a limit, as it begins working you will see a note at the bottom informing you that it is working on “slice 1 of 4.”

The second way is to slice up a big image manually so that it doesn’t render all at once, occupying the next two weeks of your computer time!

The goal is to render in smaller time segments so that You can get full access to your computer once in awhile and eventually still get that larger render accomplished. After they are rendered they get assembled as layers in Paint Shop Pro or Photo Shop. The following gives directions for working in PSP.

Note:

The following instructions are based on certain assumptions about how Apophysis is being used.

  1. The renderings being discussed are rendered without transparency, or if rendered with transparency have been combined with a black background so that what is being worked on is no longer transparent. The reason this is important – transparent renderings cannot be overlapped and combined as described here. To combine transparent renderings they will need to be trimmed for an exact edge-to-edge fit. The same may be true if the desired background is a gradient of colors or a non-black background.
  2. The alignment options assume that the Adjust panel/Camera tab/Rotation control remains at 0 (zero). If this control is not ZERO it will change how the alignment of the slices can be accomplished. In most cases, any rotation of the flame can be accomplished without having to make use of the “Camera Rotation” control.

Open one of your rendered slices and enlarge the Canvas or start a new image that is big enough for all your layers. Load each image as a New Layer, and align the layers using “difference” as the method which makes the overlap areas turn black when it’s properly aligned. Assuming your background color is BLACK, change the layer properties to “Lighten” which allows the layers to blend and minor differences from render to render are not a problem and won’t create a visible line. When you are done, flatten all the layers into one layer.

Slicing

Here’s an example. Say you want an image that is 3000 pix wide x 2000 pix high. The “Scale” property in Apo is directly tied to the “Width” factor but NOT tied to height. So the key here is to leave the Width=3000.

The slicing will be done only on the height factor.

This example has a finished image that is 2000 pix high so let’s make 10 slices, each slice 250 pixels high. The reason is that you want some overlap for the later compositing process. You also want to make sure you capture the full desired height of your flame. If there is extra area you can easily crop the assembled image.

Start by correctly scaling and centering your desired view in the preview window. Then set the Image Width and Height to the overall values you want, for this example it is 3000 x 2000, click update, then save your parameters.

Before you start slicing you need more information.

Go to the “Adjust panel” and click the “Camera” tab. Make a note of what values exist for the “X position” and the “Y position”. These represent the center of your desired view for the whole thing. For this process you will be changing the “Y position” values, but do NOT change the “X position” values.

The next task is to find out where the top of your image is and the bottom. You do this in the Main panel preview window.

In this example (yours will be different) my overall center is Y=0.005.

Click and drag your preview from very near the top of the preview window and approximately in the center from left to right. Accuracy here is not important. Drag that point down till your pointer is as close to the very center of your preview window as you can gauge it by simply looking at it. Release the mouse, and the “Y position” value will update in the “Camera Tab” of the “Adjust Panel.” Write that value down as it’s the location of the top of your image.

In this example the value is Y= -0.997. (yours will be different)

Now click near the bottom of your preview window, which is where the actual center of your image is at the moment, and drag that point all the way to the top of the preview window. When you release the mouse, the “Y position” data will update showing the location of the bottom of your image.

The bottom of this example is located at Y=1.061. (yours will be different)

Using the calculator, the distance between the top and bottom is found by adding these numbers together, and ignoring the minus sign for the top value. For this example the total distance for Y=2.058.

We want 10 divisions and we will start at either the top or bottom. That leaves 9 increments to fill up the rest of the space. In this example let’s start at the top and work down.

2.058 / 9 = .2286667 (rounded off)

This is the incremental distance between the centers of each slice.

Starting with -0.997, add your increment of .228667 and get -0.768333.
Next, add the increment again and get -0.539666, and so on until the last increment yields +1.0610003. You now have the centers for each of the 10 slices, each of which will be 250 pixels high.

Now you’re ready to set up the slices

Go to the “Adjust Panel” and click the “Image Size” tab. Make sure that the check box for “Maintain Aspect Ratio” is UNCHECKED! If you followed all the directions above the Width will show 3000 and the height will show 2000. Select the “Height” value and change it to read 250. Click the “Apply” button and the preview should update to a very wide but not tall slice, 3000 x 250.

Next, click the “Camera” tab and go to the “Y position” box. Eliminate the value already there and enter the value for the top of your image. In this example that would be -0.997. If the number already there has many digits you might have to click and drag carefully to select the whole thing and use -backspace- on the keyboard. When you’re sure it’s clean, enter your top value. Then click -Enter- on the keyboard.

The preview window should now be positioned so that it is centered on the top of your image. Save this parameter-set using an appropriate name, and a number designating the first of 10 slices.

Go back to the “Y position” box and enter the next position down in your list. In the example case, -0.539666. Click -Enter- and then save the parameters as your 2nd of 10 slices. Continue till all 10 are saved.

At your leasure, select one of those parameters and render it. When they are all rendered, assemble them in a graphics program.

 

Add a Comment

Gradient Harvesting

Planning Ahead

Every time you create a random batch, you might find something of interest either in a random parameter set or for use later. If you don’t care for the pattern, maybe the color gradient is one you might want later. Save gradients that you like in UGR files. Create new UGR files for different purposes – for colors on dark backgrounds, colors on light backgrounds, complex colors, simple colors, predominant colors, etc.

Remember that how a Flame looks with a gradient is not totally due to the gradient itself, but involves how the color settings for each transform that makes up the Flame are set.

The goal is to build a library of cool stuff to work with that is uniquely yours. You liked it, tweaked it, collected and organized it. It’s yours to use as you build custom designs later. If you like, rotate the colors, change the color saturation, contrast, hue or brightness before saving it.

To save a gradient, Right mouse click in the gradient display in the Gradient tab of the Adjust panel, and select the option to “Save Gradient”. Either find a suitable existing UGR file, or enter a name for a new UGR file, click OK. The UGR file is a container for many gradients so the next step is to assign a name to this gradient so it is identified within the container file. Save the gradient.

It can be fun to open ApoMap, which is a gradient editor for Apophysis. It has various functions to change the colors and make them look different. It also has a unique RGB based chart in which you can draw lines that control the percentages of each primary color in the gradient.

One goal of this process is to match up specific color bands in the gradient to regions of a flame image. When you save files in ApoMap results in gradients of the Fractint format with an extension, “.map”. Apophysis can read these files directly, or you can download a conversion program that will change a collection of MAP files into a convenient container UGR file. You can also copy the gradients to the clipboard and paste them into the Gradient tab in Apophysis.

 

Add a Comment

devArt Thumbs

Recent Comments