Released on 2017.06.09
Vuo 1.2.6 adds 12 community-requested features, fixes 18 community-reported issues, and improves performance and stability. It's free for people who purchased Vuo 1.2.x.
- Many Vuo Editor workflow improvements, including:
- Duplicate cables by holding ⌥ (Option) and dragging — now use ⇧ (Shift) to create event-only cables
- Reorder published ports by dragging
- Find nodes on the canvas by pressing ⌘F
- Edit subcompositions without having to close and reopen compositions that use them
- Added 85 nodes, including:
- 31 nodes for working with tree (XML, JSON) and tabular (CSV, TSV) data
- 14 image filter nodes
- 3 nodes for boolean operations on 3D objects
- Added a workaround for a bug in Apple's AMD X4000 drivers causing system-wide hangs while performing certain intense rendering operations
Read on for all the details.
Built-in Nodes, Types, and Input Editors
- Added 16 nodes for working with tree data (Thanks to joeladria for requesting this!)
- Fetch trees from XML and JSON files, including Apple XML Property Lists such as the iTunes Library
- Get values from and change values in trees
- Search trees using XPath
- Format trees as XML and JSON
- Added 15 nodes for working with tabular data (Thanks to joeladria for requesting this!)
- Fetch tables from CSV and TSV files
- Get values from and change values in tables
- Format tables as CSV and TSV
- Added 14 image filter nodes:
Apply Liquid Resizing
andApply Liquid Mask
nodes (Pro)Measure Sharpness
(Pro)Outline Image
Make Grayscale Image
Make Sepia Image
Ripple Image Radially
- And several new image filter nodes based on Brad Larson's GPUImage library (Thanks to Magneson for his work on these!) —
Make Crosshatch Image
Reduce Haze
Solarize Image
Make Cartoon Image
Pixellate Image Radially
Make CGA Image
Adjust Image Colors
— new Vibrance, Temperature, and Tint ports
- Added 40 other nodes:
- Basic constructive solid geometry (CSG) support —
Union
,Intersect
, andSubtract 3D Objects
(Pro) (Thanks to ajm for requesting this!) Record and Play Values
(Thanks to jersmi for requesting this!)Open Document
andOpen URL in Browser
(Thanks to mle for requesting this!)Merge XYZW Lists
(Thanks to Kewl for requesting this!)Step Movie Frame
Compare Texts
File Exists
Get ASCII Code
Make Transform List (TRS)
Flatten 3D Object
(Pro)- Image → Width/Height type converters
- List of 2D/3D/4D Point ↔︎ Real type converters
- 2D and 3D Transform → Real type converters
- Basic constructive solid geometry (CSG) support —
- Added 19 example compositions:
- Change Table Data to Metric
- Color My World
- Compare Noise Range Modes
- Compare Ripple Types
- Display Pet Adoptions Table
- Graph Coldest Temperatures
- List Countries
- Look Up Country
- Look Up Sister Cities
- Move Dots with Perlin Noise
- Move Seagulls Closer Together
- Operate on 3D Objects
- Perform Coin Flip Experiment
- Pixellate Image Radially
- Record Camera Drags
- Record Mouse Clicks to CSV File
- Record Mouse Clicks to JSON File
- Remove Parts of Photo
- Step Movie
- Made 14 other community-requested improvements:
- Fixed issue where some Vuo compositions wouldn't run if Vuo Editor was on a case-sensitive filesystem (Thanks to timwessman for reporting this issue!)
- Added support for reading PLY meshes with
texture_x/y
-style property names, such as those from trn.io (Thanks to mle for reporting this issue!) - Added support for uniform width (screen-space) lines and antialiasing to
Make Wireframe Shader
(Thanks to tivonrice for requesting this!) - Fixed issue where
Make Noise Image
was blurry at extreme aspect ratios (Thanks to bLackburst for reporting this issue!) - Fixed inaccuracies when converting between Euler and quaternion rotations (Thanks to Philip for reporting this issue!)
- Fixed issue where
Receive Live Video
wouldn't start receiving video again after being stopped (Thanks to Chris for reporting this issue!) - Fixed issue where the
Make Radial/Linear Gradient Image
nodes didn't use Vuo Coordinates (Thanks to unicode for reporting this issue!) - Added a workaround for a bug in Apple's AMD X4000 drivers causing system-wide hangs while performing certain intense rendering operations (Thanks to alexmitchellmus for reporting this issue!)
- Fixed issue where the
Sort Points
nodes, and the Leap MotionSort Hands
andSort Pointables
nodes, didn't properly order some lists (Thanks to @Philip for reporting this issue!) - Fixed issue where Aggregate and Multi-Output audio devices didn't show up (Thanks to Teo for reporting this issue!)
- Fixed crash when feeding certain scenes/layers to nodes that calculate their bounds (
Arrange 3D Objects in Grid
,Arrange Layers in Grid
,Combine Layers (Center)
,Fetch Scene
,Get 3D Object Bounds
,Normalize 3D Object
) (Thanks to Azy and Bodysoulspirit for reporting this issue!) - Fixed issue where Hap movies didn't work in exported apps (Thanks to timwessman for reporting this issue!)
- Added workaround for a bug in Apple's NVIDIA GeForce 320M drivers causing the GPU to crash when rendering with multisampling enabled (Thanks to Benedikt for reporting this issue!)
- Fixed issue where
Make Rounded Rectangle Layer
's Anchor port caused the layer to move to an unexpected position (Thanks to timwessman for reporting this issue!) - Added a Position output port to the
Find Minimum/Maximum
nodes (Thanks to cymaspace for requesting this!)
- Changed
Receive Live Video
to output timestamps starting at 0, instead of using the camera's arbitrary timestamp - Added support for
data:
URIs - Added support for finding Mac PICT files
- Renamed
Shade with *
nodes toMake * Shader
for consistency with their function - Renamed
Ripple Image
toRipple Image Directionally
and gave it a "Displacement" port - Improved overall event-handling performance
- Improved performance of the
Sort Points
,Sort Hands
, andSort Pointables
nodes - Improved performance of and fixed memory leak in
Fetch Data
andConvert Data to Text
- Improved performance and increased maximum possible depth when rendering 3D object hierarchies
- Improved performance when rendering graphics to a window
- Added added a workaround for an AVFoundation bug where it reports that a movie has a certain number of audio channels but actually decodes a different number
- Added support for the new Console logging system in macOS Sierra (10.12)
- Fixed issue where exported apps wouldn't prompt to save screen recordings if you quit while still recording
- Added more 3D object validity tests, and info on OpenGL drivers and connected displays, when debug mode is enabled
- Improved performance of many list nodes
- Improved performance of
Change All Shaders
when the object has no child objects - Fixed memory leak when playing movies
- Fixed issue where VuoMidiNote summaries showed the wrong octave for note numbers 0 – 11
- Enabled dynamic GPU switching, which should improve performance if you switch displays while a composition is running
- Added "Preserved Brightnesses" and "Show Images" ports to
Mask Image by Brightness
, and added several brightness types - Added "Include Children" port to
Get Rendered Layer Bounds
- Added "Coordinate Space" port to
Make Vertex Attribute Shader
- Added "Activate" port to
Launch App
- Added "Range Mode" port to
Make Noise Image
andMake Spherical Noise Image
- Added "Center" and "Height" ports to
Vignette Image
- Added triangular and hexagonal modes to
Pixellate Image
- Added 4D Point support to the
Scale
node - Added a
User-Agent
string to Vuo's HTTP(S) requests - Enabled using index variable
i
in theCalculate List
node's expressions - Fixed issue where
Change All Shaders
andChange Shaders with Name
would cause objects to stop rendering if no shader was provided - Fixed issue where
Change Shaders with Name
would do nothing if NULL text was provided (instead of changing all shaders as expected) - Fixed issue where where
Make Text Layer
was sometimes blurry when the anchor was left or right - Fixed issue where
Ripple Image
didn't respect the image's aspect ratio - Fixed issue where several scene and layer copying nodes didn't copy the blend mode
- Fixed a hang when passing a negative number to the "Copies" or "Items per Group" ports on the 'Copy List Items' and 'Copy List Item Groups' nodes
- Fixed memory leak when rendering multiple copies of the same text
- Fixed memory leak when showing list port popovers
- Fixed memory leak when listing Syphon servers
- Fixed crash when pressing some keys while the composition's About dialog is focused
- Fixed crash when changing the folder for a recorded movie in an exported app run on Mac OS 10.8
- Fixed rare crash when quickly switching OSC devices
- Fixed rare crash when stopping a composition that uses Art-Net
- Fixed issue where
Combine 3D Stereo Images
produced incorrect output for the stripe/checkerboard modes when on the AMD Radeon R9 M370X GPU - Fixed issue where
Wave
would output incorrect values when Time decreased while changing the wave type - Added workaround for Cocoa bugs when rendering very small windows
- Added workaround for a bug in Apple's NVIDIA GeForce 650M drivers where a scene would be rendered with incorrect colors when outputting to a window via an IOSurface
Vuo Editor
- Multiple improvements to published ports:
- Added ability to reorder published ports by dragging (Thanks to 2bitpunk for requesting this!)
- Fixed issue where the canvas didn't scroll when dragging a cable past the published port sidebar (Thanks to Bodysoulspirit for reporting this issue!)
- Added more ways to connect cables to published ports (e.g., by dragging a cable from one published port and dropping it on another published port or an internal port)
- Made it easier to connect cables to published ports by making the drop zone larger
- Disabled resizing the node library while published port sidebars are displayed, so it doesn't interfere with published cable drags
- Stopped copying published ports when copying nodes
- Fixed issue where published cable drags didn't track correctly with the cursor after redocking the node library
- Fixed issue where deleting a published port via the context menu could leave a stranded collapsed type converter on the canvas
- Started using the
Share Value
node's customized name (instead of the nondescript "Value") when publishing its ports
- Made 5 other community-requested improvements:
- Added ability to duplicate cables by holding ⌥ (Option) and dragging — now use ⇧ (Shift) to create event-only cables (Thanks to Magneson for requesting this!)
- Added smooth scrolling in the node library (Thanks to Bodysoulspirit for requesting this!)
- Fixed issue where backslashes in node titles would duplicate when the composition is reopened (Thanks to Philip for reporting this issue!)
- Fixed issue where certain structures of feedback loops would cause the composition to freeze (Thanks to casdekker for reporting this issue!)
- Fixed issue that prevented subcomposition with certain non-English characters from appearing in the Node Library (Thanks to JérômeLanon for reporting this issue!)
- Added ability to find nodes on the canvas by pressing ⌘F
- Added ability to edit subcompositions without having to close and reopen compositions that use them (however, for now, those compositions still need to stop and restart)
- Added templates for image, layer, and scene compositions
- Added ability to double-click on or drag a node from the node documentation panel onto the canvas to create a new instance of that node
- Added ability to cancel an in-progress cable drag by pressing Esc
- Repositioned port popovers so they're always within the visible canvas area
- Repositioned input editors to avoid going behind the dock or off the left side of the screen
- Changed keyboard focus to the canvas when opening a composition, so you can use spacebar-drag scrolling without having to click first
- Stopped offering
Get Child Layers
andGet Child Objects
as type converters since they're rarely useful in that context - Stopped offering
Summarize Value
as a type converter for VuoData since it's rarely useful in that context - Made the
Fire on Start
node the default "Re-fire Event" source when creating a new composition - Added
Allow First Event
node to protocol template compositions - Added a default search to show relevant nodes when creating a composition from a template
- Enabled "Snap to Grid" and "Show Grid Lines" when running Vuo Editor for the first time
- Changed port popover layout to use columns for improved readability
- Enabled word-wrapping in port popovers, and increased the amount of text shown
- Enabled the numpad Enter key to open input editors (just like the central Return key already does)
- Improved performance when compiling the cache
- Added Minimize and Zoom items to Vuo Editor's Window menu
- Fixed issue where some keyboard shortcuts only worked when at least 1 composition window was open
- Fixed crash when attempting to run a composition with a missing node
- Fixed occasional crash when undoing compound operations (such as connecting a cable that requires type specialization or a type converter)
- Fixed rare crash when closing a composition while it is running in "Show Events" mode
- Fixed rare crash when toggling dark mode
- Fixed rare crash when resizing a list while a protocol composition is running
- Fixed issue where the "Save Changes" dialog would sometimes appear multiple times while quitting Vuo Editor
- Fixed issue where using "Save As" on a subcomposition would fail to reinstall the subcomposition
Documentation
- Made 3 community-requested improvements:
- Clarified functions in the
Calculate
node documentation (Thanks to Kewl for reporting this issue!) - Fixed incorrect documentation in the
Make Parametric Grid Mesh
node (Thanks to unicode for reporting this issue!) - Added information about GPU acceleration to the Image and Scene node set documentation (Thanks to manuelmitasch for requesting this!)
- Clarified functions in the
- Corrected documentation about which image is where in the
Combine 3D Stereo Images
node's stripe/checkerboard modes - Added more keywords to many nodes, to make them easier to find in the node library
- Added more guidance on choosing a video codec
- Added more guidance on using the
Process List
andBuild List
nodes - Updated instructions for downloading Vuo
SDK
- Clarified documentation about whether a node dependency needs to specify the file extension (Thanks to mic for reporting this issue!)
- Added
VuoGlContext_perform()
which enables nodes to perform operations on the root OpenGL context (as opposed to using a shared context) - Simplified the VuoImageRenderer API (it no longer requires per-node state)
- Added a README to the root of the SDK archive
- Added more built-in documentation to the command-line tools
- Added ability to use menu input editors without having to create a new type (
menuItems
port detail) - Added ability to call
VuoDefer()
with a NULL argument - Fixed various minor typos and rendering issues in the API documentation
- Added backtraces when debug mode is enabled and a node fails to restore OpenGL context state
- Added
menuItems
port detail for the VuoAnchor type, so 3rd-party host apps don't need to implement a special input editor for that type - Added an API to access controller names in the
BCF2000
nodes - Added a default step for Real, Integer, and Point ports that don't explicitly provide one
- Updated instructions for building Vuo from source code