Antimony Changelog

What's new in Antimony 0.9.3 Beta

Nov 28, 2016
  • Features:
  • Use alt modifier to drag values faster
  • Add 'Show math string' node
  • Pre-emptively clip rendering to screen size (which should make rendering faster when zoomed in)
  • Easier packaging for Debian (thanks @pfelecan)
  • Flatter icon (thanks, @ApostolosB)
  • Bugfixes:
  • Tab and shift-tab now switch between datums like they used to (before 0.9.1)
  • HSB color node is no longer black by default
  • Fix extra images being drawn on load
  • 'Hide UI' menu item actually does what it says

New in Antimony 0.9.2 Beta (Jul 4, 2016)

  • Features:
  • Building now uses cmake instead of qmake, which is much simpler
  • sb.ui functions now take an optional key argument to disambiguate
  • Bug fixes:
  • Dragging sb.ui shapes was not undoable; now, it is.
  • Correct positions are passed into controls with absolute drag callbacks
  • Fixed a bug where you could end up with unparented control instances

New in Antimony 0.9.1c Beta (May 23, 2016)

  • News:
  • This release adds support for nested graphs!
  • The UI is also rewritten, pretty much from scratch. It implements the same
  • functionality in fewer lines of code and should be more robust in keeping the
  • graph and UI synched.
  • Nested Graphs:
  • You can now add a subgraph by selecting Graph from the Add menu.
  • In its parent graph, a subgraph looks just like a script node:
  • Subgraph from parent
  • The three icons open up:
  • The subgraph (as an editable graph)
  • A single 3D viewport showing the subgraph
  • A set of four 3D viewports showing the subgraph
  • Within the subgraph, you can add Inputs and Outputs from the Add menu.
  • These inputs and outputs are strongly typed and show up as floating Datums:
  • Subgraph from parent
  • Other features:
  • Unified undo / redo framework (should be more robust)
  • Drag / drop targets are now larger (thanks, @awgrover)
  • Local datum looking with self (thanks, @awgrover)
  • Bug fixes:
  • Trying to export at resolution 0 now prints an error message
  • Fixed an edge case where undoing a connection didn't restore original text
  • Fixed transparent windows on Wayland (thanks, @ApostolosB)
  • Parsing long expressions doesn't fail
  • Fixed QGestureManager crash (thanks, Qt 5.5)

New in Antimony 0.9.0c Beta (Oct 22, 2015)

  • This release has a new f-rep parser and a new graph engine!
  • Not much has changed on the user-facing side of things, but the internals are much spiffier (and will be easier to build on in the future).
  • New parser:
  • The f-rep parser has been rewritten by @fros1y to use lemon and flex instead of a homebrew solution.
  • In this rewrite, a second way of expression math was added: infix notation (a.k.a. the way that most people write math). For example, instead of writing
  • -+qXqYf1
  • you can write
  • =pow(X, 2) + pow(Y, 2) - 1;
  • The leading = and trailing ; indicate to the parser that this is an infix string.
  • For examples of this new syntax, check out the [cylinder wrap (https://github.com/mkeeter/antimony/blob/develop/py/fab/shapes.py#L804-L824) function.
  • New graph engine:
  • The graph engine has been rewritten from the ground up as a stand-alone library (though its design is optimized for Antimony's use-case). It no longer uses Qt signals and slots (or at all!), preferring the STL and C++11.
  • There's a slick re-evaluation optimization: when an upstream object changes, the engine properly sequences downstream update calls to minimize the number of times scripts and datums get re-evaluated. In practice, I've seen a 5x speedup on very large graphs.
  • Breaking changes:
  • Some of the changes made here are potentially breaking. There's a transparent migration path from older files; feel free to report bugs if it fails for you.
  • Namespaces:
  • These changes will be find-and-replaced when older files are loaded, so things should Just Work in most cases.
  • fab.ui namespace has been renamed sb.ui
  • meta object (which contains export functions) has been renamed sb.export
  • fab.color object has been renamed sb.color
  • Graph changes:
  • It's no longer legal to connect an output datum to an input in the same script. Previously, this was legal (but a bad idea).
  • Datums of type str must have their expressions quoted. Previously, there was a magic check to auto-quote them if evaluation failed.
  • Other features:
  • Return key acts like tab when editing datums in an inspector.
  • Unary operators (rotate, scale, etc) preserve shape color.
  • More information is displayed in viewport (thanks, @joshuashort)
  • User data directory is searched for nodes (thanks, @astronouth7303)
  • Gradients are calculated exactly (improves rendering quality).
  • right_triangle now supports negative widths and heights
  • Keyboard arrows (up and down) adjust datum values in inspectors.
  • arctan2 operator is now available in f-reps
  • Fun new nodes: volume-filling gyroids!
  • Bug fixes:
  • .sb extension is now added on Linux.
  • UTF-8 is used regardless of locale settings.