Regular, non-pre/post variations usually sum their outputs. However, not all of them behave this way: some assign their outputs instead. This behavior is non-standard and began showing up in various Apophysis plugins long after it was established that variations should sum their outputs. It is unclear whether this was the actual intent of the plugin authors, or if it was accidental. Either way, Fractorium maintains the same behavior with these special variations.

Using these variations is very tricky because it completely changes the usual relationship between multiple variations within an xform. When adding variations to an xform in Fractorium, they are always added to the end of the list of variations that already exist in that xform. Since their outputs are normally summed, their order does not matter. However, when a variation that assigns its output is added to the list, it’s order most definitely does matter.

Consider this simple example:

You have an xform which contains the variations circlecrop and spherical, stored internally in that order. If you remove circlecrop, then re-add it, it will now be internally stored after spherical. Normally this wouldn’t matter, but since circlecrop assigns rather than sums, the output will be completely different. Due to the extremely delicate nature of these variations, be sure you know what you are doing before using them.

You can query which variations assign, rather than sum by running:

EmberGenome.exe --assignvars

which will give the following list:

circlecrop
extrude
flatten
hexaplay3D
hexcrop
hexnix3D
juliaNab
mirror_x
mirror_y
mirror_z
octapol
rotate_x
rotate_y
rotate_z
roundspher3D