Oxidizer 0.6

by David Burnett • Sunday June 1st, 2008
Posted in Developer's Corner, Oxidizer Community

As Oxidzer 0.5 slowly crawls towards release its time to plan 0.6 so I though I’d let you guys to throw your hats in to the ring.

Here’s the ideas that I have in the pot, either my own, or ideas that people have suggested.

Take these as given…

  • Update flam3 to the latest version .
  • Update LuaObjCBridge if I see any advantage in doing so.

So the proper idea’s are in no particular order…

  • Save / Load of sparse gradients.
  • Double Click and Drag and Drop loading of flam3 files.
  • A browser for the auto backups.
  • Auto-previews for changes to all parameters like the Transformation editor
  • Keyboard shortcut shift-cmd-L (or similar) for Lua Script.
  • A genome pin board to keep genomes around on possibly persistent between sessions.
  • An additional “#” column in the main list that gives the index of a flame
  • Ditto in the transform editor, a column with numbers to identify the flames
  • A “clear” button in the Breeder in addition to the load/+/- buttons, or multi-select genome ability.
  • Check auto-post
  • A script library/launcher integrated with the Main Oxidizer window.
  • A Lua script console, to see the output of scripts.
  • A reorganization of the XForms window to put the affine and post coefficients under the same tab.
  • Persist the current set of flames across Oxidizer sessions.
  • Allow the preview image size to be altered, hovering over the image well shows the bigger preview.

And the real blue sky one…

  • Multi-preview – choose a parameter, set max and min and render a number of previews with that parameter set between max and min

So, over to you, which of these do you think would be is there anything else you can think of.


p.s. I’ll know if you’re hyping your own ideas :-)


  1. ralf
         June 2, 2008

    Err, hum….well – I think they’re all good :)

    The “double-click loading” already works, doesn’t it? (but not drag-and-drop; it would be nice if drag-and-drop from the Finder worked like “append”)

    About multi-preview: this is easy to do with scripts, although it would require one to make edits to the scripts a lot, which is a pain – but I can imagine that doing it in ObjC is a LOT more work..

    Which reminds me, a couple of ideas I had before:

    *** A script library/launcher integrated with the Main Oxidizer window, like in my Oxidizer Reloaded feature request

    *** A Lua script console, to see the output of scripts. Currently the only way to see that is to run Oxidizer through the XCode debugger.

    *** Also as shown in the Oxidizer Reloaded feature request above, a reorganization of the XForms window to put the affine and post coefficients under the same tab (and get rid of one tab) – and the empty space next to the XForms weight, symmetry and colour fields is perfect for putting a set of sliders, combined with the auto-preview :)

  2. Scott Chitwood
         June 3, 2008

    New toys are always cool David — thanks for heads up!

    A big lack of free time to just sit and play at the computer has kept me from doing anything meaningful with Oxidizer in recent weeks, and unfortunately it doesn’t look like I’ll get my head above water anytime soon. But regardless of that, it’s always a treat to know what’s in store for the fans and users.

    I’m a little curious. Did you envision developing Oxidizer to the point is now (and planned to be) when you first started dabbling with it?

  3. David Burnett
         June 3, 2008


    No, I just knocked up Oxidizer because

    0) Electric Sheep was one of those screen savers I’d check out every now and again as say “When I’ve got broadband…”

    1) There was no Mac GUI to create flames (well there was GIMP but the plug-in was fairly limited).

    2) to learn a bit of Objective-C / Cocoa.

    I just stick anything I code that’s usable on SourceForge in case someone else might find it useful.


    I knew there was other suggestions I’d missed !

    Double click loading does work but you have to set it up first, plus I need to add an icon for them. Drag and drop to append is exactly what I was thinking.

    As for the multi-preview, I’m not thinking of doing anything too complicated, It would be pretty much the same code as the thumbnail renderer with a bit of code to fiddle the value.
    The GUI would be like the GenePool but with a couple more controls for max / min values.

    I’d add your ideas to the main blog post, along with another couple I’ve add in the mean time.

  4. ralf
         June 12, 2008

    One more: I’d like to be able to build a flame from scratch by adding empty XForms. Currently it’s impossible to add an XForm before a flame has been defined (the + button doesn’t work) – I assume this is because it needs to have the image/environment parameters set, which gets done by generating/loading a flame.

    But it’s kinda awkward to have to generate a random flame first and then manually delete all its XForms to get a blank slate to which I can then add new XForms.

    So: clicking the + button on the XForms tab without a flame defined would set the image parameters to the default configuration and add an default (linear) XForm with weight = 1.

  5. roger kriegel
         July 27, 2008

    hi, im new to this app, just started playing with it……would be nice to have an After effects plugin version of this…was trying to compare it with AE flame and it doesnt seem to have all the features oxidizer has.

  6. roger kriegel
         July 28, 2008

    *help documents that go into detail about the parameters
    *an interface like After Effects where all the windows are as ONE and the render window is like the comp window in AE.

  7. roger kriegel
         July 28, 2008

    dont know if this can be fixed, but rendering over 800 quality the renderer starts to lose the ability to render pixels near the center.

  8. roger kriegel
         July 28, 2008

    *multiple undo- if i change a field and hit preview and hit undo it wont do it, so i have to cut and paste the field data back in

    *is there a reason we cant create our own 128×128 .png file of some texture or image and import it to use as a basis for creating some abstract stuff.

    *currently in the gene pool, i have to select all the ones i dont want which turns them gray, as opposed to just selecting the two i want to breed.

  9. roger kriegel
         July 28, 2008

    *less pop up windows…seems like it could be designed more efficiently….when you click on xforms and have oxidizer 0-3, then click edit to open ANOTHER window…dont see why this cant all be located in the same window somehow.

  10. Scott Chitwood
         July 28, 2008

    That’s a big wish list Roger and some may be beyond where David is planning on taking the next release. However, we’ve seen some good progress with Oxidizer since first stumbling across it back in February of 2007.

    Be sure to check all the links available under the Oxidizer section. Good helpful info there, especially in article comments. Also, forum has a dedicated section.

    Hope this helps you along the way!

  11. roger kriegel
         July 29, 2008

    thanks i havent checked out the forum :)

    im just posting what issues im having, dont expect such improvements within one release.

    also would like to see a preference or preset for render sizes as its annoying to have to keep typing in a render size bigger then 100×100


  12. roger kriegel
         July 29, 2008

    * have the jpg compression settings remember the last one used…its always on medium and i have to constantly change it to high

  13. David Burnett
         July 31, 2008

    That ones more of a bug than a feature request so I’ve fixed it. If any more bugs creep out of the woodwork it’ll be in a bug fix release, else it’ll be in 0.6.

  14. Pharmagician
         August 4, 2008

    Hi Dave – I think there’s a bug in 0.5.2: when I resize an image in the editing window by changing one of the height/width values, with the lock aspect box ticked, the other value does not change proportionally as it should.

  15. David Burnett
         August 7, 2008

    Thanks for the report Pharm, that sahould now be fixed in CVS.

  16. yoshiyahu
         September 30, 2008

    Handling of color-

    I have a suspicion that most of all could easily be done with a simple Lua script. But I can’t write scripts in Lua, and doubt I’ll be able to learn — (if anyone knows a site that would be helpful in this regard, please let me know… )

    1) specify a genome and have x variants generated in the editor with the same settings except that the color maps are randomly generated for each one.

    2) Ability to load and save color maps/palettes

    3) Steal the Apophysis feature where you can pull the colors from a graphics file and apply those colors to your genome

  17. ralf
         September 30, 2008

    yoshiyahu – I have a couple of scripts on color map handling: scripts. They’re primitive, but they can fill the function of defining, saving and loading color maps. Regrettably they destroy the sparseness of the map, so I’m hoping this is one of the features that Dave will try to build into Oxidizer for the next version :)

  18. yoshiyahu
         October 9, 2008

    Ralf — thanks for the link! I’ll have to check them out. I am slowly getting more confident messing with the parameters of your simil3 script and getting neat results….

  19. pabh
         October 20, 2008

    – Unified workspace, possibly with tabs for larger windows

    – integration of render message window into environment window

    – scalable render port for render to window (numeric) (view 25%, view 50%, etc)

    – From Editor back to Pool for selected genomes

    – automation for the breeder – take state a and state b and breed them for x generations

    – definable render settings that persist across sessions
    – settings definable for gene pool as well as editor (maybe in a drawer or something) as it seems the settings I am always changing in the editor get set by the gene pool

  20. paulk
         November 20, 2008

    Expand on Preview images settings in Preferences to allow more complete control over size/quality of Preview images.

    And isolate those settings from being affected by Quality Scale and Size Scale settings on Environment panel. Sometimes I have larger values plugged in there and forget, then I do one of the following:

    a) import a genome creation lua script
    b) update a Preview for a genome
    c) same a flam3 file with thumbnails turned on

    and, wham! Oxidizer goes into limbo where it’s going to spend ages doing very high quality (and high resolution?) renders of Previews, which takes forever. And the only way I can stop it is to force quit.

    It’s a minor annoyance, but.. :-)

  21. roger kriegel
         April 13, 2009

    i think i suggested this awhile back…but there are TOO many windows…this app can be condensed into a cleaner user interface…im imagining something like after effects…you have everything connected into one big window…there seems to me too be too many duplications of some options…id be happy to mock up a rough photoshop version :)

    also after seeing a tutorial using aphososis it seems in that app you can select all your xforms and see all the triangles at once in the editor…as of now in oxidizer i can only see one at a time.

  22. roger kriegel
         April 13, 2009

    and more documentations and tutorials for some of the various fractal variations for those of use who are mathematically challenged ;)

  23. roger kriegel
         April 13, 2009

    and changing the render ETA from 600minutes to 10minutes

  24. roger kriegel
         April 14, 2009

    actually putting windows in tab format could help alleviate window conjestion, so clicking xform editor will switch to it rather then open new window

    put environment tab as an icon button at top, then all the image, colour, render, xform, edit tabs can be placed where environment is now getting rid of another window

    can the transformations window be recoded to fit into the xforms tab in the flame window?

    again i dont know how hard it is to make these changes but just throwin out ideas

  25. roger kriegel
         October 4, 2009

    i too am interested in creating fractals from scratch and like the idea ralf suggested..i am happy to so i finally figured out how to render a julian fractal thanks to a link someone gave me that gave step by step instructions…..it would be great to have a manual that goes into specifics about what each variables do to a fractal…and sample tutorials on how to create the various types of fractals from scratch…and if these tutorials exist somewhere else on the internet then maybe an easy to find link on your website or build it in a pull down menu in the app itself…..im dying to start creating amazing fractals, its just im not finding the info i need to understand how to create the beautiful complex fractals i am seeing on other peoples websites…once i understand how to create each one from scratch i know i will be able to understand how the variables change the fractal…oh and i think my post above that says 600minutes to 10mintues is suppose to be 600 seconds to 10 minutes.. thanks

  26. ekdor
         October 21, 2009

    I know some of these are mentioned in some way above but I have decided to leave my list largely intact to demonstrate my “vote” for these changes.

    * Unified work space. Currently there are too many windows producing many redundant (duplicated) features. Yep it’s been said a few times.

    * Global Undo and Redo with Key Commands.

    * Better file extension handling in regards to saved files, FLAM3 & LUA. Will help with file manipulation in Finder. For example: duplicate one of these files and the extension is disregarded.

    * Script window column widths should favour the name of the script and not the path. Possibly have an option to hide path column for those of us whom don’t want to see it unless needed. Perhaps the scripts can be managed in a separate edit panel (slide out?) leaving the built in library free for clear use?

    * Script window name column has extension added to the script name, this is cluttering. Is this related to the current extension situation?

    * Save dialog automatic extension addition.

    * Save dialog show/hide extension option.

    * Save dialog remember output formats.

    * Would like to see more TIF format options like LZW compression.

    * When Rendering to File I still get a solid Alpha channel with a TIF saved file even though I don’t have Alpha turned on. Not sure if this is unrelated as Maya does the same thing.

    * Command-S should invoke Save-As if Flame file isn’t already saved instead of being greyed out. Also matching behaviour for tool bar icon.

    * Rendering Progress area to show total number of Flames in Que.

    * Rendering Progress area to show Time Elapsed.

    * Rendering Progress area window might be better titled Render Progress instead of Rendering Image…?

    * Cancel All button in Rendering Progress area to stop all cued Flames/Frames.

    * Cancel button in Quick View area or an invoke button so one can more quickly get tho the parameters.

    * Saved/Unsaved Red Dot (top left fruit/traffic lights). Currently no indication of the saved state of a flame file.

    * Quick View option for the Render (tab)/Filter, I can’t see any variations when using it?

    * Option to not see the script console window when running a LUA script. Non of my script have outputs and it doesn’t interest me and I get sick of closing it.

    * A relationship between the Colour Map (0-255) and the Colour Sliders (0-1).

    * Window menu item to open the main Oxidizer window. On occasion, with all the windows open, I mistakenly close the main window. Better still, it should be fixed in visible state. In this case the close button would be better utilised as a quit button.

    * Distributed workload over LAN. Something like MentalRay in Maya and Max etc. If your not familiar with it, it’s a great system. Host machine (one with Oxidizer running on it) specifies what machine to contact on the network (IP:PORT). Maya does this with a text file with a specific name in a specific location. Don’t see why it can’t be internal. The Slave machine (the one helping to do the renders) has a small daemon that is invoked over the network by the host machine. This starts up and receives instruction, packets and returns packets. Works very well. Although I doubt they would give it to you so you might have to find an alternative or make your own to do this. One can dream though. Perhaps a long term feature?

    * Flame file icon as the flame preview instead of a separate file. I guess an internal library would reduce the need for such dynamic icons.

    Cheers,. Brook

Sorry, comments for this entry are closed at this time.

1 Trackbacks/Pingbacks

  1. Pingback: Rampant Mac » Blog Archive » Half a page of scribbled lines… on September 30, 2008