Hot on the heels of version 2.0 of Nodality, I'm really excited to be able to announce the release of version 2.1 to the App Store just in time to see in the New Year.

Nodality is the only node based image editing and compositing application for iPad and written in Apple's Swift language. 

Version 2.1 includes some major new features which include:

Automatic Creation of Numeric Inputs




In response to this blog post by Andy Probst, I wanted a way to speed up setting numeric parameters for nodes with lots of input channels (e.g. the Tone Curve filter). I played with a few options but decided on adding a new item to the hamburger menu, Auto Create Numeric Inputs.

This item scans the currently selected node and creates new numeric input nodes for any empty input channels. For filters such as Twirl Distortion and Tone Curve, it also sets sensible defaults for the new nodes. 

The automatically generated nodes are no different from a manually created node, so can be reused for other purposes. In this screenshot, Nodality has auto-generated six new nodes with default values for a Tone Curve filter and I've reused them to create an RGB color:



Save and Load Project Snapshots



With the help of Jameson Quave's excellent Core Data tutorials, Nodality now allows the user to save and load project snapshots. Nodality automatically creates a snapshot when the user deletes one or more nodes, allowing me to remove the confirmation dialog when deleting all. Users can manually save a snapshot from the hamburger menu.

I've put a fairly arbitrary limit of 25 snapshots into this version. I'm currently working on Nodality version 2.2 which will include CloudKit support for more permanent storage.

Better Screen for New Users



In version 2.0, completely new users were presented with a slightly terse dialog followed by a blank grey screen. I've now changed this to offer those users a very simple example network which includes an image with very basic instructions. 

Everything Else

Nodality version 2.1 incudes a whole load of new halftone and blend filters along with minor bug fixes and performance improvements.

One of the big issues for me was that 2.0 wouldn't compile with anything apart from None [-O0] optimisation. I only found this when I was preparing for release and couldn't find an easy fix. After ripping the code apart, I was able to get the build working with Fastest [-O3] by marking all my delegate class with the @objc attribute, for example:


@objc class ViewController: UIViewController, UIScrollViewDelegate, UIToolbarDelegate

The full list of fixes and features for 2.1 is:


  • Added halftone filters: dot screen, hatched screen and line screen filters
  • Added support to save and load snapshots of project
  • Fixed bug which could corrupt data after if app didn't shut down properly
  • Added constant color filter
  • When creating relationships while zoomed out, if there's only one suitable input channel use that rather than displaying call-out
  • When creating relationships while zoomed out, change node widget border to yellow to hint that a call-out will be used
  • Set scroll position after load to put top left node into view
  • Bring selected node to front when selected
  • Add menu function to automatically create numeric inputs for empty numeric inputs slots of selected node
  • Added splash screen
  • Fix relationship creation mode bug in complex projects when UI fully zoomed out
  • Improve performance of 'delete all nodes'
  • Fix bug where input select popover sometimes appears in wrong position
  • Added new blends and composite filters: DarkenBlend, MaximumCompositing, MinimumCompositing, MultiplyCompositing, SaturationBlend, ScreenBlend, SourceAtop, SourceIn, SourceOut, SourceOver
  • Split out composite and blend filters into seperate tabs
  • Fix bug where source image alpha channel was getting lost when project was saved
  • Added Color Matrix filter
  • Make toolbar in image preview darker so 'cancel' and 'save' buttons are always visible
  • Added simple blur demo nodes for brand new users

Nodality 2.1 is still free of charge and available right now at the App Store:




Nodality now has its own Twitter handle which you can follow to keep up with the latest developments: @NodalityApp

Known Bugs

If a complex network of nodes is reopened (e.g. by saving and reopening), occasionally node widgets are duplicated on screen. The workaround is to simply 'delete all nodes' and then load the automatically saved snapshot created before the delete. This duplicated node widget bug is fixed in the upcoming version 2.2


0

Add a comment

About Me
About Me
Labels
Labels
Blog Archive
Loading