0.7.1
July 22, 20260.7.1 - Live Wire (hotfix). Wiring counts as unsaved changes, undo on timeline clips, clips keep their length.
Fixed
- Wiring edits now count as unsaved changes - sessions whose last edits were pure connections used to quit without a save prompt and silently lose the wires.
- Undo on timeline clips - dragging a clip block (and moving/resizing active regions) registers one undo step per gesture.
- Clips keep their length - duration is saved with the project and seeds the timeline block when the media is loading or missing.
- OSC re-targets the current graph after New/Open.
0.7.0
July 14, 20260.7 - Live Wire. Live Mode: your graph as a performance control surface - bento tiles, big buttons, knobs, full MIDI.
Added
- Live Mode - a new 'Live' tab over the canvas (Cmd+L): opted-in nodes appear as tiles on a free dashboard grid; drag by the header, resize from the corner, snap-to-grid with overlap rejection. Layout saved per project.
- Tiles built for hands - giant ON/BYPASS button plus the node's published params as flat rotary knobs and large latch buttons; tap a tile to select the node in the inspector.
- R3Knob - new rotary control (270-degree arc, vertical drag, Shift fine, double-click reset) with full MIDI learn, latch menu, keyframes, auto-key and undo.
- Show in Live - opt nodes in from the grid button in Properties or right-click -> 'Show in Live' on the canvas.
- Timeline clips - timeline-synced video players place as draggable clip blocks with Clip Start and In point.
- Picture accepts multiple texture sources - the active one shows automatically.
Performance
- MIDI input coalesces flooded controller values per 120 Hz window, and Live tiles cache their parameter list - the dashboard stays responsive under heavy MIDI.
0.6.62
July 11, 20260.6.62 - Signal Flow (patch). Center-out Contact Sheet chase, MIDI latch mode, Syphon Output orientation.
Added
- Contact Sheet: Center out - cells reveal in rings from the grid's center (outside-in with Reverse); the frame delay follows the same radial order. MIDI-assignable.
- MIDI latch mode - right-click a mapping badge to make a note mapping latch (each press flips the parameter) instead of momentary; the same menu removes the mapping.
- Syphon Output: Flip vertical toggle - pick the frame origin the receiver expects (on by default).
Fixed
- Syphon Output (node and Root server) no longer arrives upside down in GL-origin receivers.
0.6.61
July 11, 20260.6.61 - Signal Flow (patch). MIDI notes on Contact Sheet toggles, Syphon flip control.
Added
- MIDI notes on Contact Sheet toggles - every toggle (reverse, fill order, frame delay, fade out, auto size, match proportion, preserve aspect, reset) is MIDI-learnable; notes act as momentary switches (hold Reset to freeze the chase). Also reachable via OSC/MCP.
- Syphon Input: Flip vertical toggle - senders differ in frame origin, so the flip is now per-node (on by default).
Fixed
- Syphon Input frames no longer arrive upside down from GL-origin senders.
0.6.6
July 10, 20260.6.6 - Signal Flow. NDI + Syphon inputs, Auto Crop, Strobe, Contact Sheet and Clone Chaser.
Added
- NDI Input node - receive video over the network from Resolume, OBS, or any NDI source; auto-discovers sources; on load it reconnects to the saved source, defaulting to the first available until it comes online.
- Syphon Input node - receive a GPU texture from any Syphon server (Resolume, MadMapper, VDMX, another R3NE), zero-copy; reconnects to the saved server on load, falling back to the first available.
- Auto Crop node - automatically removes letterbox/pillarbox bars and reframes the content (fit or fill), with threshold, margin, uniform auto-padding and smoothed reframing that snaps on composition changes.
- Strobe node - color + alpha strobe with attack / duration / release envelope; internal rate or pulse mode driven by an LFO (or any float), with an overridable color input port.
- Contact Sheet node - cols x rows grid where each cell is delayed by a cumulative number of frames, revealed by a timed chase with flash; auto size shapes every cell to the content's true proportion with an animated transition, alpha detection option and per-cell auto-padding.
- Clone Chaser node - N tiled clones revealed in a timed chase (center-out or reverse) with flash pulse.
- Picture: Fit / Fill (auto crop) / Auto size aspect modes - Auto size adapts the width to each image, no manual adjustment per photo.
- Frame Buffer: adjustable feedback delay (1-30 frames), plus inspector controls for Frame Buffer and Frame Delay.
- Remote parameters everywhere - OSC and MCP set_params now reach node parameters that aren't input ports (Contact Sheet, Strobe, Advanced Color Correction, ...); the Remote Parameters panel lists them with copy-ready addresses.
Fixed
- Ring-buffer nodes (Contact Sheet, Frame Buffer, Frame Delay) no longer flash magenta while their history fills or after a resize.
- Contact Sheet auto size crops cleanly, without dark edge pixels around cells.
0.6.52
July 2, 20260.6.52 - Fresh Coat (patch). Fixes for inspector resets, Vision smoothness, and MIDI.
Added
- Double-click to reset: double-click a slider's name to reset it to default, and double-click a color wheel in Advanced Color Correction to recenter it.
Fixed
- The reset button now restores numeric values, ports AND options (e.g. Person Segmentation quality) to defaults - without touching connections, keyframes or MIDI maps.
- MIDI (and keyframes) now reach Advanced Color Correction parameters - exposure, contrast, the HSL qualifier, and the rest.
- Vision stays smooth in live preview: Depth / Person Segmentation / Face / Pose / Blob run inference asynchronously (synchronous frame-accurate inference now applies to export only) - no more main-thread stalls, laggy preview, or a frozen UI when a menu is open over a live Vision node.
- The MIDI menu no longer freezes while a controller is sending data.
- The inspector no longer hitches when opening a dropdown on Live Input / Audio Input nodes.
0.6.51
June 30, 20260.6.51 - Fresh Coat (patch). Inspector sliders track the knob again.
Fixed
- Inspector sliders track again. Dragging a parameter slider now moves the knob smoothly instead of leaving it stuck while the value changed - both the generic node inspector sliders and the shader @input parameter sliders.
0.6.5
June 30, 20260.6.5 - Fresh Coat. A cleaner, more delightful node canvas - flowing wires, alignment tools, a searchable library, 2D gizmos, node error/bypass states, and a redesigned welcome.
Added
- Cable flow you can read. Wires show direction with a subtle animated flow on hover/selection, highlight the cable under the cursor, and dim unrelated ones so a busy graph stays legible.
- Canvas tooling: a minimap for big graphs, alignment guides while dragging, and snap-to-grid - all in the View menu.
- Search the node library. A search field filters every node by name; results drag straight onto the canvas.
- 2D transform gizmos. Move, rotate and scale a Picture in the viewport with an Apple-style rotation handle. Hold Shift to snap - rotation to a degree step and moving to a pixel grid - both adjustable in Settings > Canvas.
- Node states you can see. A node that fails to evaluate or compile shows a red error border, a status LED and the message on hover; bypassed nodes read at a glance with a dimmed look and a BYPASS badge.
- Redesigned welcome screen - a cleaner two-column launcher with recent projects and actions on the left and the R3NE mark on the right.
Changed
- A calmer, sharper canvas: refined node look with a magenta selection glow, a cleaner grid, and more legible port labels and values.
- Centered, simplified window title - just the file name and R3NE.
- Lighter and faster: static shaders (no time/animation) no longer re-render every frame, and the canvas skips redundant per-tick UI work - smoother with big graphs.
Fixed
- 3D camera stays put. Opening a project with a Gaussian splat no longer auto-frames and overwrites your saved camera - it used to land in a different spot each time.
0.6.0
June 18, 20260.6 - Full Spectrum. An end-to-end color pipeline with wide gamut and HDR, a professional grading node, and Apple Spatial Video.
Added
- Color pipeline. Project Settings now controls how R3NE renders color end to end: precision (8-bit, 10-bit, or 16-bit float - kills banding in gradients and feedback), working space (gamma, or physically-correct linear light for accurate blending, blur and lighting), and output color space (sRGB/Rec.709, wide-gamut Display P3, or HDR/EDR for XDR displays). Preview, fullscreen, Syphon/NDI and exported files are all tagged. Defaults stay 8-bit/gamma/sRGB, so existing projects look identical until you opt in.
- Advanced Color Correction node. A complete grade in one node, applied in a fixed pro order: white balance, exposure, contrast, highlights/shadows/whites/blacks, Lift/Gamma/Gain/Offset color wheels, saturation/vibrance, RGB curves (master + per-channel), HSL curves, and an HSL secondary to key and regrade just one color range. Interactive color-balance trackballs and draggable curve editors in the inspector.
- Spatial Video (MV-HEVC). Play Apple Spatial Video clips - outputs the left/right eye plus a stereo depth map. Pair the eye with Depth Estimation for cleaner depth, and feed a Depth Point Cloud for a 3D look.
Changed
- Vision effects are frame-accurate when you render. Depth Estimation, Person Segmentation and Face/Pose/Blob now grade the exact frame being exported instead of trailing an inference behind. A new Synchronous (frame-accurate) toggle locks them to the current frame in the live preview too.
- 3D scenes composite in linear light when the project's working space is linear, for correct blending and bloom.
- Cleaner Color section in the Post-FX library, and node header colors now match their category.
Fixed
- Project Settings persist. Output resolution and frame rate are now saved with the project and restored on open - they used to revert to defaults.
- HDR output and export no longer crash - the on-screen gizmos and the export/NDI readback paths handle the 16-bit float pipeline correctly.
- Depth Point Cloud and other 3D layers no longer freeze during export.
- Procedural generators keep their saturation in linear working space.
0.5.1
June 10, 20260.5.1 - Five on 0.5. Five fixes hardening the 0.5 release: a locked-down local network, sturdier MIDI, and projects that reopen exactly as you saved them.
Fixed
- The control API (MCP) and OSC input now listen on this Mac only by default, instead of being reachable by anyone on your network. A new Settings > Network tab lets you opt either one back into LAN access when you actually want remote control (e.g. OSC from TouchOSC on a tablet).
- MIDI input no longer crashes on controllers that batch messages or send sysex - the packet parser was reading past the end of multi-packet lists. Unplugging and replugging a MIDI controller mid-session now reconnects automatically instead of going silent.
- Optical Flow no longer crashes when fed a source that isn't 1920x1080 (e.g. a 720p video); it now tracks the input's real size.
- Opening a project restores audio/LFO to parameter routing again - value links were being silently dropped on load.
- Scene3D projects with multiple geometries, lights or particle feeds reload all of their connections reliably, instead of losing some at random.
0.5.0
June 8, 20260.5 - Splats, point clouds and signals. Gaussian splatting lands, depth becomes 3D, and the Sine Wave grows up into an LFO.
Added
- Gaussian Splatting (.ply / 3DGS). Load a real splat cloud with full SH degree-3 view-dependent colour, GPU-sorted every frame, auto-framed on load. Two rasterizers to choose from: the capped tile rasterizer (fast) and a global-sort one (no per-tile cap). Relight the splats with the scene lights (diffuse plus specular), and crop the cloud by wiring a cube or sphere into the clip port. A Splat Quality dial trades resolution for FPS.
- Point-cloud view for splats - see the cloud as flat coloured dots instead of gaussians, with adjustable point size and a density dial to thin it out.
- Depth Point Cloud node (3D) - feed it a colour texture plus a depth map and it builds a real 3D point cloud (depth-displaced, tinted by the colour), orbitable in the scene and depth-tested against your geometry.
- Depth Key node (Video) - mask a video by an EXTERNAL depth map: isolate a depth band (near/far, target/width/falloff) and output a masked, cutout, or grayscale result. Drive one clip's mask from another clip's depth.
- Depth Glitch node (Post-FX) - a stylistic block-tear effect with black edges and background bleed, for faking the look of broken depth.
- LFO node (the renamed, grown-up Sine Wave). 10 shapes - Sine, Square, Triangle, Sawtooth, Pulse plus White, Sample and Hold, Smooth, Fractal and Brown noise - with seed and slew/smoothing for the noise types, and a live scope in the inspector that traces the real output value.
- Custom shaders now have an editable Output Resolution (presets plus custom width x height) in the inspector.
- Preview viewport zoom: a Fit / slider / 100% control with scroll bars, plus Cmd-scroll to zoom.
Changed
- The Node Library is reorganized into collapsible groups: 3D (Scene / Geometry / Lights / Camera / Material / Modifiers / Effects), Post-FX (Blur and Sharpen / Color / Stylize / Distort / Glitch / Light / Key and Composite), Modifiers (Signal / Value / Audio) and Generators (Noise / Pattern). Vision and Vector nodes are now reachable from the library too.
- Fullscreen output (F9) is now truly edge-to-edge with square corners, and you can drive the 3D camera (orbit / pan / dolly) directly in fullscreen. Frame the output with Cmd-scroll zoom, arrow-key pan, A to cycle Fit / Fill / 1:1, R to rotate 180 degrees, H/V to flip, M to mirror the preview's zoom, 0 to reset.
Fixed
- Integer parameters now round-trip through save / load. Custom shader resolution, star sides, fractal octaves, voronoi points, Text 3D segments and others were silently resetting to defaults on reopen.
- Changing a node's output resolution no longer crashes the feedback nodes (Frame Buffer, Temporal Filter, Frame Delay) - their internal textures now resize in step with the input.
- Global-sort splats: fixed coarse depth keys that caused a blocky depth glitch; the cap rasterizer's per-tile limit was raised so dense clouds drop fewer splats.
0.4.3
June 3, 20260.4.3D, a kind of Unreal update. We focused on making 3D better.
Added
- Local / Global gizmo space. A toolbar toggle (or the X key) flips the move / rotate / scale handles between world axes and the object's own axes, so you can nudge a rotated object along its own forward or up.
- Fly the viewport camera with WASD / QE, and tune the fly speed with the scroll wheel. F frames the selected object and widens the camera's near / far clip planes so large objects aren't sliced by the frustum.
- Keyframe object transforms straight from the timeline. With REC on, dragging a gizmo or flying the camera drops keyframes automatically.
- HDRI / Environment node drives image-based lighting, and can show as the scene background.
- Wireframe display with an adjustable line width, plus a textures-off toggle, in the Scene3D inspector.
- Audio Input can capture specific input channels (multichannel).
- Timeline rubber-band marquee selects keyframes across channels in any direction, and Delete removes the selection. Unified undo now covers inspector fields, timeline keyframes, gizmo moves, and camera navigation.
Changed
- 3D scenes render with a transparent background by default, so the layer composites over any 2D source beneath it.
- Redesigned move gizmo with cone arrowheads and slimmer, shorter handles. Cameras and lights now draw shape-distinct editor icons (a camera body with a lens, a light bulb), and gizmos hide during playback.
- Numeric inspector fields are directly typeable.
Fixed
- HDRI environment no longer flickers back to the procedural sky.
- Scene3D reconnects correctly after a node is deleted, camera ports target reliably, and an empty scene clears to transparent instead of magenta.
- Keyframed transforms no longer fight manual control when the playhead is parked.
- Fullscreen output hides the menubar fully so it covers the whole screen.
0.4.2
June 2, 2026Blob Tracker , track moving or bright blobs with bounding boxes
Added
- Blob Tracker node (Vision), built for EDUMEX , tracks moving (frame-diff) or bright (luma) blobs in any texture and draws a bounding box around each one, with optional connecting lines (mesh / nearest / chain) and centroid dots. Persistent per-blob IDs, adjustable threshold / size filters / detection rate, and blobCount + blob1X/Y/Size outputs. Runs fully async (GPU downscale plus a non-blocking readback) so it never stalls the render.
- "4. Blob Tracker" example project (File → New from Example) , Plasma → Blob Tracker → composite, showing the boxes drawn over the source.
Fixed
- Inspector sliders now use sensible ranges. Frame Feedback (decay / zoom / rotation) and other nodes whose parameters fell back to a guessed range , which could pin the slider at its edge and feel unadjustable , now seed their range from the timeline's parameter registry.
0.4.1
June 1, 2026Drag any value onto an inspector field, audio-reactive transforms
Added
- Parameter links, drag the link dot next to any numeric inspector field onto a node's output to drive that value from it. Wire a Sound Modifier to Position / Rotation / Scale (or any float param) so audio, LFOs, or any scalar animate the transform.
- A ghost line follows the cursor while dragging a link, and compatible outputs highlight green.
- Linked parameters show a green cable on the canvas plus a synthetic input row on the target node, so the routing reads like a normal connection.
- Click a linked dot to open a scale / offset editor (value = source × scale + offset) with an Unlink button.
Changed
- Parameter links are sampled every frame after evaluation, so they drive both 3D transforms and 2D / PostFX float params live, and are saved with the project.
0.4.0
May 29, 2026Live audio input, OSC remote control, real extruded Text 3D, viewport picking, scene hierarchy, and a faster engine
Added
- Audio Input node, live Core Audio capture with device picker, gain, dBFS level meter, and optional system passthrough; analyzers (Audio Bands, Beat Sync) now read from any audio source upstream.
- Remote Parameters panel (Cmd+Shift+P) listing every animatable port with its OSC / MIDI / MCP address, so external controllers can drive the graph over OSC.
- Real extruded Text 3D geometry, CoreText glyph outlines triangulated into front/back caps and side walls (winding-agnostic, so CFF and TrueType fonts both render), replacing the old alpha-mask quad. Includes a font picker popover with live preview.
- Straight-skeleton Text 3D bevels, large, self-intersecting bevels that meet in the center on curved typography, with a custom bevel profile curve editor (draggable Catmull-Rom spline) alongside Chamfer / Round / Concave / Step presets and a Classic / Skeleton mode toggle.
- 3D viewport picking, click a mesh, camera, or light in the composition to select it (cameras and lights get a synthetic pick volume tied to their marker).
- Scene Hierarchy panel above the inspector, groups every 3D node by family with eye-toggle visibility and click-to-select.
- Multi-select and group transforms, Shift / Cmd click in the viewport or hierarchy; the gizmo applies one world delta to the whole selection.
- Floating gizmo toolbar on the viewport (translate / rotate / scale) with 1 / 2 / 3 shortcuts.
- Bug reporter (Help → Report a Bug…) with auto-attached diagnostics, plus Help-menu links to Releases and Documentation.
- Timeline export to H.264 and ProRes with quality presets.
- Library tabs (Nodes / Media) in the left sidebar.
Changed
- Skeleton is now the default Text 3D bevel mode; the inspector is reorganized into Geometry / Bevel shape / Tessellation groups with the profile picker on its own full-width row.
- Default workspace split is 50/50 between the composition viewport and the node graph, and the node graph auto-fits all nodes when a project opens.
- Shader code editor rewritten with a custom scroll / line-number container so MSL source renders reliably inside R3NE's layer-backed window.
- Composition viewport is drag-resizable; the right inspector was widened so long sliders fit their value labels.
- Sidebar panels no longer draw under the window titlebar, and the window title / status bar now show the real app version.
Fixed
- Timeline keyframes now drive the input ports the renderer actually reads, animating blur radius, generator, and most PostFX parameters was previously frozen.
- Fullscreen output on a secondary monitor now reliably puts pixels on screen (standard window path + pull-mode rendering that survives capture boxes / converters).
- Glyphs with holes (O, B, P, R, A) now triangulate completely, fixed an ear-clipping stall on bridge-merge duplicate vertices.
- Round and Concave bevel profiles were inverted; high-quality bevels no longer produce holes or corner spikes.
- Text 3D (depth, bevel, profile, segments, custom curve) and Audio Input settings are now persisted on save.
Performance
- Separable two-pass Gaussian blur (≈16× fewer samples).
- Cached downstream adjacency and O(n) topological evaluation for dirty propagation; O(inputs) port propagation.
- Per-frame scratch-buffer reuse in the Scene3D render path and a value-type Text 3D mesh key (no per-frame string allocation).
- Autosave JSON encode + write moved off the main thread; PersonSegmentation per-pixel diagnostics gated behind debug builds.
0.3.5
May 17, 20263D gizmos, vector graphics, pose / audio tracking, scene snapshots, OSC
Added
- 3D translate / rotate / scale gizmos in the viewport, colored axis bars with arrow caps, rotation rings, scale handles, hover highlight, shift-snapping (0.1 unit / 15° / 0.1 factor), and 1/2/3 mode shortcuts plus a floating toolbar.
- Vector graphics pipeline, import SVG, modify with effectors (trim, repeat, distort), render flat or extruded to 3D meshes.
- Pose Tracking node, Vision body keypoints with smoothed interpolation between detections.
- Audio Bands + Beat Sync nodes, FFT-based multi-band amplitude plus tempo/beat triggers.
- Scene Snapshots, 128-slot grid panel for storing and recalling full graph states.
- OSC input, incoming OSC messages map to any animatable port over UDP.
- Three Get Started example projects covering common patterns.
- Scene3D transparent background, alpha-aware sky branch so 3D layers composite cleanly over the 2D pipeline.
Changed
- Scene3D inputs are now dynamic like Root, one empty slot per family always available, trimmed on disconnect, capped at 32 / 16 / 16.
- Scene3D node body collapses input rows to just colored dots (no labels) so the canvas stays readable as inputs grow.
- Composition viewport is now drag-resizable from the splitter.
- Gizmo overlay honors the letterboxed scene rectangle so handles align with the rendered texture at any window aspect.
- Face Detection now streams the source video unchanged and renders boxes / mask as a separate overlay, full frame rate on live cameras.
Fixed
- MaterialData.default no longer flagged with an unnecessary nonisolated(unsafe) attribute.
- Custom shader filters can now receive multiple texture inputs.
- Several save-persistence gaps (Tile, Tint, Plasma scale/complexity, gradient colors) closed by routing all writes through universal port defaults.
0.3.1
May 2, 2026Auto-update fix, color picker overhaul, save reliability
Fixed
- Sparkle auto-update never offered new versions because every build shipped with the same CFBundleVersion. Bumped build number tracking and the appcast now uses proper integer sparkle:version.
- Color picker now updates continuously while the panel is open, replaced the SwiftUI ColorPicker / NSColorWell stack with a Button + KVO bridge to NSColorPanel.
- Several node parameters (Plasma scale/complexity, Gradient colors, etc.) were not persisted on save, encoder now universally captures port defaults and decoder restores them.
- Stale connection layer left drawn after replacing a connection on an occupied input.
- Could not connect/reconnect to Root after disconnecting one of multiple inputs.
Added
- Drag-and-drop from Finder onto the canvas, auto-detects image / video / sound by extension and spawns the appropriate node.
- Drag-and-drop from the Media Library to the canvas.
- Sound type in Media Library, with auto-registration from SoundLoader nodes.
Changed
- Root node redesigned again: smaller (96×96) flat black square with magnet-style connection points centered on each side.
- Nodes with parameters as ports (DepthEstimation et al.) now respect uiMin/uiMax/uiPrecision hints for crisp slider ranges.
- Connection layer cleanup runs only when the graph structure changes, no more wasted sweeps during pan/zoom.
0.3.0
April 30, 2026Real-time depth, unified inspector, and a faster canvas
Added
- Depth Estimation node, DepthAnything V2 (CoreML) running async in the background, with animatable params (near, far, smoothing, invert, isolate band).
- Drag-and-drop from the Node Library directly onto the canvas.
- Universal copy / paste / cut for every node type (Cmd+C, Cmd+X, Cmd+V), round-trips through the project serializer so nothing is left behind.
- Liquid Glass splash screen with the R3NE wordmark.
- Inspector-side checkbox rendering for boolean ports.
- Per-port UI hints (range, precision) so auto-generated sliders match the param's intent.
Changed
- Inspector panels unified, numeric params now live in a single Inputs section instead of being duplicated above and below.
- Root node redesigned as a flat black square with the R glyph in #e5e7eb.
- Node placement cascades diagonally so freshly-created nodes don't pile up on top of each other.
- Transport bar widened so the frame counter no longer clips on long compositions.
Fixed
- Color picker stopped applying changes after the first edit while the panel was open.
- Tint node lost its color on save.
- Topological sort and PostFX attachment graph now cache and invalidate on structure change, significant CPU savings on large graphs.
- Removed waitUntilCompleted GPU stalls (saves 2–5 ms per frame).
0.2.0
March 24, 2026Auto-update, distribution
Added
- MCP server bundled as the r3ne plugin.
- Documentation site at r3ne.app/docs.
0.1.0
February 18, 2026Public beta seed
Added
- Initial node graph engine with 2D, generators, post-FX, shading, modifiers, sound, video, and a 3D scene with PBR.
- Live shader authoring in MSL with @input annotations.
- Timeline with keyframes, MIDI mapping, and headless export.
- FFGL plugin for Resolume Arena and a TouchDesigner TOP plugin.