This release focuses on making it easier to create compositions in the Vuo Editor. New features include: a drawer user interface for working with list input ports; an activity indicator to show when the composition is preparing to run, update, or stop; and input editors for boolean (true/false) and color input ports. The Vuo Editor no longer hangs when the user quits the composition or the composition crashes. In addition to the Vuo Editor improvements, this release adds a full-screen mode for composition graphics windows.

Changes

Here’s what we’ve done in the last 2 weeks:

Documentation

  • Fixed composition components in the user manual which were rendered at various levels of opacity. [#5950]

Examples

  • Added example composition DisplayScene.vuo, demonstrating the “Get Scene” node. [#5290]
  • Added example composition ShowMouseClicks.vuo, demonstrating the “Get Mouse” and “Filter Mouse Button Action” nodes. [#3712] [#6050]

Vuo Editor

  • Added a drawer user interface for easily adding and removing items when working with list input ports. Previously, a special kind of node called Make List would be automatically connected to each list input port, and the number of input ports on the Make List node could be changed with a context menu. Now, the Make List node is rendered as a drawer of input ports attached to the list input port, and the number of input ports can be changed by dragging the drawer handle. [#3995]
  • Added an activity indicator in the toolbar that appears when the composition is preparing to run or preparing to stop. [#5025]
  • Fixed the inability to run any more compositions after a composition is quit or crashes. [#3092]
  • Fixed the failure to create and connect a new Make List node when a list input port is unpublished. [#5989]
  • Fixed the unwanted Make List node being created when an event-only cable is disconnected from a list input port. [#5989]
  • Fixed the failure to delete the old Make List node when a data-and-event cable is connected to a list input port. [#5992]
  • Fixed the unwanted Make List node being created when a cable drag is initiated and released for a list input port that already has a Make List node connected. [#6000]
  • Fixed the wrong name being displayed for input ports after collapsing a type-converter node onto an input port, undoing, and collapsing the type-converter node onto a different input port. [#6004]
  • Fixed the incorrect rendering of the composition after collapsing a type-converter node onto an input port, deleting the type-converter node’s incoming cable, then undoing both operations. [#6011]
  • Fixed the unwanted type-converter node created when a cable is disconnected from one input port and connected to another. [#6022]
  • Fixed the incorrect Run/Stop button state after attempting to quit Vuo Editor while a composition is running but then canceling the unsaved changes dialog. [#5469]
  • Fixed the editor occasionally crashing when closing a composition editor window while the composition is running. [#5585]
  • Fixed the editor crashing when drawing a cable from a trigger port while its ‘Show Events’ animation was running. [#5959]
  • Upgraded from Qt 5.1.0-beta1 to Qt 5.1.1. [#5338]

Built-in Nodes, Types, and Input Editors

  • Added a full-screen mode for the scene window displayed by the Render Scene to Window and Render Image to Window nodes. Each window has a menu item and keyboard shortcuts that can be used to toggle between full-screen and windowed mode. When there are multiple displays, the window becomes full-screen on the display that shows the largest portion of the window. [#5127]
  • Added an input editor for VuoColor ports. (Thanks, @George_Toledo, for requesting this!) [#5351]
  • Added an input editor for VuoBoolean ports. [#5590]
  • Added the Convert Boolean to Integer node class. [#4038]
  • Added the Make Triangle Vertices node class. [#4953]
  • Added Find Maximum and Find Minimum node classes. [#6024]
  • Added Select Input/Latest/Output node classes for the VuoShader type. (Thanks, @George_Toledo, for requesting this!) [#4593]
  • Added trigger ports for scrolling and button actions to the Get Mouse node. [#3712] [#6050]
  • Renamed the Get Mouse node’s moved trigger port to movedBy, and added a movedTo trigger port. [#3712]
  • Changed the Get Mouse node’s moved* trigger ports to fire events when the mouse is moved while a mouse button is down (i.e., dragged), not just when all mouse buttons are up. [#3712]
  • Added the Get Mouse Button Action Values and Filter Mouse Button Action nodes. [#6050]
  • Used the VuoBoolean type consistently for all ports that transmit boolean values. Previously, some used VuoInteger or VuoReal. (Thanks, @George_Toledo, for reporting this!) [#5589]
  • Changed the default VuoColor input port value to white for the Get HSL Color Values, Get RGB Color Values, and Discard Data from Event (vuo.type.color.event) node classes. [#5351]
  • Disabled (grayed out) the close button on composition windows. Later, we’ll support more node-based control of windows and response to window events. (Thanks, @George_Toledo, for reporting this!) [#5614]
  • Changed the title of the graphics window to say “scene” instead of “scenegraph”. [#6009]
  • Renamed the output ports of the Round, Round Up, and Round Down nodes to be unique, so that they can be distinguished when rendered as collapsed type-converter nodes. [#5165]
  • Renamed the vuo.select.* and vuo.hold.* node classes to include the number of input ports and the exact type name of input ports. [#5554]
  • Enabled the node’s tooltip to show when hovering over a collapsed type-converter node. [#3783]
  • Fixed the “Problem creating accessible interface” warnings for scene windows. [#5122]
  • Fixed the missing dependency for the Display Console Window node, which prevented some compositions containing that node from building. [#5999]
  • Fixed the missing dependency for the Get Mouse node, which prevented some compositions containing that node from building. [#3712]
  • Fixed the way the reference-counting system was being accessed by input editors. Instead of initializing its own copy of the reference-counting system, each input editor now uses a reference-counting system shared throughout the Vuo Editor’s process. [#5809]
  • Fixed the composition crashing when attempting to retrieve a VuoText, VuoImage, or VuoShader trigger port’s value (e.g. when displaying a port popover in the Vuo Editor) before the trigger port has fired any events. [#5467]
  • Fixed the Place Image in Scene node’s rotation port to use degrees instead of radians. [#6044]

API

  • Added a VuoRunnerDelegate function to receive a notification when the the runner loses contact with the running composition (most likely because the composition has been quit or crashed). The VuoRunner now stops itself cleanly when this happens instead of hanging. [#3092]

Known Issues

Documentation

  • The Vuo Manual has not yet been updated to cover some new and changed functionality. [#3281]
  • The Vuo Manual is incomplete. [#3281] [#2937] [#2577]
  • Some nodes are not well documented. [#2786]

Vuo Editor

  • The editor may hang when attempting to display a port value popover while the composition is being reloaded (after being modified while running). [#5318] [#5390]
  • When a cable is disconnected while a composition is running, the input port does not keep its most recent value. [#3294]
  • Collapsed type-converter nodes aren’t selectable. [#3783]
  • On some systems, the incorrect font is used to render node and port titles. [#5159]
  • For some port types, the constant flag displays its value in quotation marks or with backslashes. [#5700]
  • When a Discard Data from Event (dataAndEvent -> event) node is collapsed and attached to an input port, it covers up the input port’s constant flag. [#6059]
  • The composition gets recompiled too many times if you drag the handle on a list drawer while the composition is running, slowing down live coding. [#6041]

Built-in Nodes, Types, and Input Editors

  • Some values of type VuoImage are not properly released when the composition is modified while running. [#5418]
  • Data editor source code is currently classified as proprietary, making it difficult for 3rd-party developers to create data editors. [#5662]
  • Scenegraphs with many child objects render too slowly. [#5937]
  • Graphics rendering in the scene window pauses while a menu is open. [#5961]
  • Graphics rendered in the scene window turn black or flicker while resizing the window or switching between spaces. [#5971]
  • The scene window’s full-screen arrows (in the top right corner for OS X 10.7 and up) cause the window to fade out as it goes full-screen and to handle shortcut keys incorrectly. [#5972]
  • The VuoColor input editor is not positioned over the port being edited. [#5351]

Vuo Compiler

  • There’s hardly any error checking during the composition compiling and linking process. If compilation fails, the compiler may crash. Currently some messages may be printed on the console, so check there first if something isn’t working. [#2341]
  • Defining moduleDependencies in multiple node libraries results in duplicate symbol errors. [#4018]
  • Vuo Compiler crashes if nodeInstanceData returns a bool type. [#4016]
  • Vuo Compiler crashes if nodeInstanceData returns a struct type. (Workaround: Return a pointer to a struct.) [#3942]
  • Vuo Compiler crashes when a port has certain struct types with few members, such as a struct with two int members. (Workaround: Add some unused members.) [#4124]
  • Vuo Compiler adds unnecessary dependencies to built compositions. [#3021]
Version
0.4.7