Apophysis 2.08 JK
Jed Kelsey (Lu-Kout)
March 15, 2009
Updated March 17, 2009
[EDIT 2009/03/17]: Apophysis 2.08 JK (Release 090317) update now available for download from sourceforge.net/projects/apo-m….
New features include:
+ Added capability to take "snapshots" of the current render in progress, so you can pause a render, preview the incomplete render (write it to file) and then resume the render.
+ Option to "collapse" view for variables tab in Editor is now enabled by default.
+ Option to embed flame parameters in rendered image is now enabled by default.
NatalieKelsey has suggested for a long time that I post some of my Apo modifications somewhere, so I finally got around to collecting a few of the more interesting (in my opinion) modifications in one custom-built Apophysis version and created a project on sourceforge.net to host the source code and executables.
A list of the major new features is included at the bottom of this journal article. A couple examples of renders using some of the new features include NatalieKelsey's Julia in the Jungle, Frostbite, and tarnished.
The purpose of this project is not to replace the official Apophysis or its 3D counterpart, but rather to encourage development, testing, and feedback for new/experimental modifications to Apo. Who knows, maybe some of my other mods will show up in the official Apo version also -- after all, the plugin interface (with some great enhancements by JoelFaber) is still around!
You can find Apophysis 2.08 JK (both compiled application and source code) at sourceforge.net/projects/apo-m…. I've also created an SVN repository there for the code, which will be updated much more often than the release builds. I'm not putting an explicit link to the release here, as it will likely be out of date almost as soon as anyone sees this journal. In fact, it's already out of date since I need to build another release with the "save while rendering" feature noted below...
Please feel free to download and try out the new versions, and let me know what you think. I'll try to keep this journal updated with major releases, as well as the (currently unimplemented) project web page, but feel free to check the Sourceforge site for more frequent changes, bug fixes, and new feature implementations.
(At time of writing this journal, there have already been 23 downloads of two "releases", and I haven't even advertised the existence of the project yet!)
The Apophysis 2.08 JK code is based on the most recent Apo 2.08 source code in the official Apophysis Sourceforge CVS repository (referred to in the Apophysis CVS repository as 2.10).
Extended Plugin support
While most of the new Apo features will work with any flame and any (stable) existing plugin, only plugins built with support for those features can take advantage of some of them (plugin-directed colorization support, queries for plugin description or other information, etc.).
I've posted source code for an example plugin (mandel2) to the project's SVN code repository that takes advantage of some of these new features. The example is based on the good ol' Mandelbrot escape-time fractal plugin I made quite a while ago, so expect some slower renders than you might be used to with "normal" IFS fractal transforms. Some of the features I've added recently have also slowed things down slightly, and have cluttered up the code significantly, but it's still much more responsive (and nicer looking, particularly with plugin-directed colorization!) than the old Mandelbrot plugin was.
I'll put up a description and compiled version of that plugin later on (not that the sources in SVN are not completely up to date), along with some tips and tricks (there are some non-intuitive parameters, variable names, etc. that arose from me just playing around with ideas and keeping them when NatalieKelsey liked them). A compiled version of the plugin (I'm playing around with a few more fun features like orbit traps, etc.) will likely be added sometime in the next few days.
The plugin code is built on a slightly enhanced version of the most recent apo-plugins header file in the apo-plugins Sourceforge CVS repository.
Recent modifications include:
[EDIT: Release 090317 includes all features described below.]
Release 090313 (2009/03/17)
+ Added capability to take "snapshots" of the current render in progress, so you can pause a render, preview the incomplete render (write it to file) and then resume the render. (Tested thus far on single-threaded default rendering modes only.)
+ Default to "collapsed" view for variables tab in Editor
+ Default is to embed flame parameters in rendered image.
(These two preferences are not yet stored in registry to be remembered across Apo sessions.)
Release 090313 (2009/03/13)
+ Updated Readme, Release Notes, Changelog and project files
+ Modified application icon to make it easier to see the 'JK'
+ Minor improvements for handling of flame parameters embedded in PNG thumbnails/renders.
+ Set up SVN (Subversion) source code repository for the Apophysis and plugin interface mods.
Release 090310 (2009-03-10)
This release includes the following updated features, as well as several bug fixes and other minor modifications. New features include:
+ Added capability to specify multiple version-specific plugin paths in "Plugins" Options tab. These are used to locate variation plugins when Apo starts.
+ Support to embed flame parameters in rendered (PNG) image.
+ Support to Import/Export PNG Thumbnails with embedded flame comment
+ Added capability to "preview" flames in a .flame file or embedded in a PNG thumbnail, and identify unknown variations, plugins, or variable names.
+ Added support for querying for "variation descriptions" on both built-in and plugin (var*.pas) variations.
+ Added "About Variation" context menu on Editor->Variations and Editor->Variables tabs.
+ Added simple UI for specifying variation/variable names for substitution on import or loading of flame file.
+ Added simple load/save alias list functionality to quickly switch between lists of import aliases.
+ Added shading of variables for variations used by the active transform to make it easier to see what variables are being used.
+ Added ability to "collapse" the variables list to show those for active variations only.
+ Added support for plugin-directed colorization.
Lu-Kout (devjed at sourceforge.net, Mr.Winter at FracFan Forum)