Skip to content

0.12.0

Choose a tag to compare

@github-actions github-actions released this 14 Oct 13:21
· 19 commits to develop since this release

Standalone

  • Bugfix: Made assets that reside next to the patchfile not show up twive in export
  • Bugfix: Fixed multiple bugs with ops not showing up in opselect, needing a restart
  • Critical change: Removed the shared op-directory in the user-home, move ops somewhere else or add that folder again, once
  • Critical change: Op directories are not stored in userpreferences (BREAKS existing patches using custom op-dirs, readd the directories once to use the ops in all patches!)
  • Feature: Fixed renaming and cloning of operators, sort them in the right directories
  • Improvement: Formating sourcecode is not possible in the editor in standalone
  • Improvement: Added webserial capabilities, see Ops.Devices.Serial.SerialPort and its attachments for implementation details
  • Improvement: Increased startup speed by building up caches faster, might take a bit longer on very first time
  • Bugfix: Fixed loading/adding of extension ops in opselect
  • Bugfix: Fixed bug with opening the local directory of any op from "manage op"
  • Bugfix: Made local op-dir not removable, fix bug when removing other op-dirs
  • Bugfix: Fixed bug when adding assets via drag and drop introduced by new electron version
  • Bugfix: Fix a bug where ops would not appear in patch when deleted on disk
  • Improvement: Add cmd/ctrl-0 shortcut to reset zoom
  • Improvement: Updated electron version to 43.2.0
  • New op: Added Ops.Mcp.McpServer to the build: https://github.com/pandrr/cables-mcp/

Ops

  • New op: Ops.Audio.Sfxr - Oldschool sound effect generator
  • New op: Ops.Array.Array3Scatter - Create copy of points at positions provided by another array
  • New op: Ops.Array.PointArray.TransformArray3NoTrigger - Transform (translate, rotate, scale) positions in an array3x
  • New op: Ops.Devices.Serial.SerialPort - Line based serial port communication
  • New op: Ops.Extension.Rapier3d.SoftBody - New op
  • New op: Ops.Extension.Rapier3d.GrabBody - Grab a body and hold it
  • New op: Ops.Extension.Rapier3d.SoftBody - Deformable body simulation
  • New op: Ops.Gl.GLTF.GltfOverwriteTexture - Overwrite a texture coming from GLTF file
  • New op: Ops.Gl.KtxTexture - Load a KTX Texture File
  • New op: Ops.Html.CSS.ElementZIndex - Set CSS margins of a html element
  • New op: Ops.Html.HtmlLinkPrefixedWords - Create links from words with a prefix to a url as suffix
  • New op: Ops.Performance.MeasureDrawCalls - Count number of drawcalls of all children of this op
  • New op: Ops.Performance.MeasureTriggersPerSecond_v2 - Created as a new version of Ops.Trigger.TriggersPerSecond
  • New op: Ops.Performance.Performance2 - Show WebGl Performance Statistics
  • Feature: Ops.Extension.Rapier3d.Body_v3 - Cubes, Spheres, Cylinder and Capsules can be rendered directly from the op, still should use meshinstancer/mesh op setup for more control and performance (if many)
  • Feature: Ops.Gl.Meshes.FullscreenRectangle_v2 - New mode: "cover" image will be cropped to fill the whole recangle github.com
  • Feature: Ops.Gl.Meshes.FullscreenRectangle_v2 - Slider to controll the offset or crop in "cover" mode or letterbox ratio in "fit" mode
  • Feature: Ops.Array.ArrayMergeMultiPort - Added an array "group" output, containing the input index for each merged value
  • Feature: Ops.Array.PointArray.PointsPlane_v2 - Added multiply toggle, number of rows/columns will be multipied with width/height
  • Feature: Ops.Cables.UploadAsset - Added option to upload assets to other patches
  • Feature: Ops.Extension.Rapier3d.Joint - Add Motor config options to return to a default angle
  • Feature: Ops.Gl.GLTF.GltfScene_v5 - Support for GPU instancing extension, activate it in blender exporter
  • Feature: Ops.Gl.RenderToTexture_v3 - Added DepthBuffer framebuffer input port, to reuse an existing depth buffer
  • Feature: Ops.Gl.RenderToTextures_v3 - Added DepthBuffer framebuffer input port, to reuse an existing depth buffer
  • Feature: Ops.Gl.Shader.CustomShader_v2 - Show parse errors in editor diagnostic panel
  • Feature: Ops.Gl.Shader.CustomShader_v2 - Show shader parse/compile errors in editor diagnostic panel
  • Feature: Ops.Html.ElementAsHtmlString - Added switch to select between DOM element outerHTML or XML Serializer API
  • Feature: Ops.Ui.VizImage - Just show the image without any border
  • Feature: Ops.Ui.VizLogger - Colors and time display
  • Feature: Ops.Ui.VizString - Show diagnostics errors as red lines
  • Improvement: Ops.Devices.Keyboard.KeyPressLearn - Force release of key when exiting a pointerlock, this prevents hanging keys which are not pressed anymore
  • Improvement: Ops.Extension.Rapier3d.World_v2 - Added simple debug renderer toggle
  • Improvement: Ops.Extension.Rapier3d.World_v3 - Added simple debug renderer toggle
  • Improvement: Ops.Extension.Voice.SpeechRecognition - Improve support status output and show UI error
  • Improvement: Ops.Gl.Meshes.ComposingGridOverlay - Updated to current version of subpatchop code
  • Improvement: Ops.Gl.Textures.WebcamTexture_v5 - Restart camera on permission change, works better on first ever load of the website, better stopping of webcam when deleting op etc.
  • Improvement: Ops.String.StringEditor - Change syntax highlighting without reopening the editor
  • Improvement: Ops.Trigger.RouteTriggerAnimated - Updated to current version of subpatchop code
  • Improvement: Ops.Audio.AudioPlayer - Added better errorhandling, show ui error instead of console output for network and decoding errors
  • Improvement: Ops.Boolean.And_v2 - New Version v2: Multiport by default
  • Improvement: Ops.Extension.Rapier3d.World_v2 - Updated rapier to NPM 0.21, which is rapier probably 0.36
  • Improvement: Ops.Extension.Voice.SpeechRecognition - Only start when active is true github.com
  • Improvement: Ops.Extension.Voice.SpeechRecognition - Show recognition errors in UI
  • Improvement: Ops.Gl.ClearColor - Added toggle to disable depth buffer clear
  • Improvement: Ops.Gl.GLTF.GltfScene_v5 - Changing order of nodes improved and works without reloading the gltf
  • Improvement: Ops.Gl.GLTF.GltfScene_v5 - Material alphamode "BLEND" will disable depth writing when rendering
  • Improvement: Ops.Gl.GLTF.GltfScene_v5 - Use gltf texture v2 for using loaded textures in v5
  • Improvement: Ops.Gl.GLTF.GltfTexture_v2 - Replace old gltf texture loader, is the gltf v5 way to use loaded textures
  • Improvement: Ops.Gl.Matrix.ArrayPathFollowParticles_v2 - Do not try to render more than possible (max number of uniforms of point array), show error message when over limit
  • Improvement: Ops.Gl.Meshes.ComposingGridOverlay - Updated to current version of subpatchop code
  • Improvement: Ops.Gl.Textures.ExrTexture - Better compatibility with .EXR files from blender github.com
  • Improvement: Ops.Gl.Textures.WebcamTexture_v5 - New version v5: when inactive or deleted op: "webcam recording indicator" will correctly turn off in OS/browser github.com
  • Improvement: Ops.Html.CSS.BackgroundImage_v2 - Made it possible to change position without setting a background image (i.e. when added in css/elsewhere)
  • Improvement: Ops.Html.Elements.ElementQuery - Cache elements of last query to not update on every change
  • Improvement: Ops.Performance.MeasureDuration - Show time in extended op title
  • Improvement: Ops.String.HandleBarsHtml_v2 - Inline parsing error diagnostics display
  • Improvement: Ops.Trigger.RouteTriggerAnimated - Updated to current version of subpatchop code
  • Improvement: Ops.Ui.VizString - Automatically will enable linenumbers and syntax highlighting, when connected port uses "editorSyntax" uiAttrib
  • Improvement: Ops.Ui.VizString - Line numbers start at 1, no longer at 0, as this is the default in most editors
  • Improvement: Ops.Vars.VarSetTexture_v2 - Removed a workaround by setting the texture to empty texture in between changes
  • Bugfix: Ops.Array.ArrayChunk_v2 - New version: v2 fix circular
  • Bugfix: Ops.Array.FlattenArray - Better handling of non array type values
  • Bugfix: Ops.Extension.Voice.SpeechRecognition - Fix starting and stopping
  • Bugfix: Ops.Gl.ArrayToTexture_v2 - Fix bug where pixelformat did not always change to selected value
  • Bugfix: Ops.Gl.ArrayToTexture_v2 - Fix texture problem with 16bit textures (now works correctly in all ops)
  • Bugfix: Ops.Gl.GLTF.GltfScene_v5 - Correcly load colors in UINT8 format github.com
  • Bugfix: Ops.Gl.ImageCompose.ImageCompose_v4 - Fix webGL "Feedback Loop" warning that happened in some cases
  • Bugfix: Ops.Gl.KtxTexture - Added visible error when KtxCompression op not in patch
  • Bugfix: Ops.Gl.Phong.PhongMaterial_v7 - Fix ambient light problems / material becoming grey
  • Bugfix: Ops.Graphics.OrbitControls_v3 - Fix bug not registering mouse button states when toggling active while mousebutton is down
  • Bugfix: Ops.String.StringEditor - Fix bug with JSON syntax highlighting not working
  • Bugfix: Ops.WebAudio.AudioOutput_v2 - Added removal of listener when deleting op
  • Bugfix: Ops.Audio.AudioPlayer - Remove element on op deletion
  • Bugfix: Ops.Extension.Rapier3d.Body_v3 - Fix crash when number of bodies from array changed github.com
  • Bugfix: Ops.Extension.Rapier3d.Body_v3 - Fixed transformation being wrong, when modelmatrix was scaled/rotated
  • Bugfix: Ops.Gl.GLTF.GltfScene_v5 - Correcly load colors in UINT8 format github.com
  • Bugfix: Ops.Gl.GLTF.GltfScene_v5 - Fix webGL warning on console for Face culling
  • Bugfix: Ops.Gl.GLTF.GltfScene_v5 - Fixed bug with camera animation being off by one frame in some cases
  • Bugfix: Ops.Gl.GLTF.GltfScene_v5 - Metalness property uses default value of 1 when property is contained in gltf
  • Bugfix: Ops.Gl.GLTF.GltfScene_v5 - Show warning when GLTF sparse accessors are used
  • Bugfix: Ops.Gl.GradientTexture_v2 - Fixed a bug when setting dither values github.com
  • Bugfix: Ops.Gl.KtxTexture - Added visible error when KtxCompression op not in patch
  • Bugfix: Ops.Gl.Shader.WireframeMaterial_v2 - Changing alpha/opacity is no longer ignored when fill mode is off github.com
  • Bugfix: Ops.Gl.Shader.WireframeMaterial_v2 - Fix crash when using with VertexNumberLimit github.com
  • Bugfix: Ops.Gl.Shader.WireframeMaterial_v2 - Fix wireframe material not working with meshinstancer github.com
  • Bugfix: Ops.Gl.ShaderEffects.VertexWobble_v2 - Fix: Invert checkbox was not updating the shader
  • Bugfix: Ops.Gl.Textures.Histogram - Works again, bug related to point sprites rendering github.com
  • Bugfix: Ops.Html.CSS.ElementPosition - Removed unused ports for z-index, use Ops.Html.CSS.ElementZIndex
  • Bugfix: Ops.Html.CompareImages_v2 - Output mismatch 100, when the resemble library returns undefined instead of a number
  • Bugfix: Ops.Html.Elements.Element_v2 - Fixed an error when changing css class when element is not active
  • Bugfix: Ops.Math.RandomCounter_v4 - New Version v4: Numbers are now random every time, and do not use the last seed of another op anymore github.com
  • Bugfix: Ops.Math.TriggerRandomNumber_v4 - New Version v4: Numbers are now random every time, and do not use the last seed of another op anymore github.com
  • Bugfix: Ops.Sidebar.SideBarImage - Fixed bug with image not added to sidebar in some cases github.com
  • Bugfix: Ops.Trigger.TriggerReceive - Added missing event to update dropdowns on namechange
  • Bugfix: Ops.Ui.Area - Set correct position after undo, hide ports
  • Bugfix: Ops.Ui.VizObject - Fixed object passtrough not being called on update
  • Bugfix: Ops.WebAudio.FFTAreaAverage_v4 - New version v4: Output texture is no longer flipped (again)
  • Deprecation: Ops.Extension.AmmoPhysics.Deprecated.AmmoBody - Op Extension.AmmoPhysics.AmmoBody was deprecated
  • Deprecation: Ops.Extension.AmmoPhysics.Deprecated.AmmoBodyCollision - Op Extension.AmmoPhysics.AmmoBodyCollision was deprecated
  • Deprecation: Ops.Extension.AmmoPhysics.Deprecated.AmmoCharacter - Op Extension.AmmoPhysics.AmmoCharacter was deprecated
  • Deprecation: Ops.Extension.AmmoPhysics.Deprecated.AmmoCharacterFpsCamera - Op Extension.AmmoPhysics.AmmoCharacterFpsCamera was deprecated
  • Deprecation: Ops.Extension.AmmoPhysics.Deprecated.AmmoDebugRenderer - Op Extension.AmmoPhysics.AmmoDebugRenderer was deprecated
  • Deprecation: Ops.Extension.AmmoPhysics.Deprecated.AmmoEmitter - Op Extension.AmmoPhysics.AmmoEmitter was deprecated
  • Deprecation: Ops.Extension.AmmoPhysics.Deprecated.AmmoRaycast - Op Extension.AmmoPhysics.AmmoRaycast was deprecated
  • Deprecation: Ops.Extension.AmmoPhysics.Deprecated.AmmoWorld - Op Extension.AmmoPhysics.AmmoWorld was deprecated
  • Deprecation: Ops.Extension.AmmoPhysics.Deprecated.GltfAmmoBodies - Op Extension.AmmoPhysics.GltfAmmoBodies was deprecated
  • Rename: Ops.Performance.MeasureTriggersPerSecond - Trigger.TriggersPerSecond renamed to Ops.Performance.MeasureTriggersPerSecond
  • Rename: Ops.Ui.VizImage - Ui.VizImageUrl renamed to Ops.Ui.VizImage
  • Rename: Ops.WebAudio.AudioInput_v2 - WebAudio.MicrophoneIn_v2 renamed to Ops.WebAudio.AudioInput_v2
  • Rename: Ops.WebAudio.AudioOutput_v2 - WebAudio.Output_v2 renamed to Ops.WebAudio.AudioOutput_v2

Editor

  • Bugfix: Fix mute button, was being ignored when loading the patch in some cases
  • Bugfix: Fix bugs with pressing multiple buttons at the same time and not catching button up events when window focus changes github.com
  • Feature: Diff view command, show difference between op versions
  • Feature: Indicate current routed/switched port by drawing an arrow triangle at the top/bottom of the port github.com
  • Improvement: Removed the "continue loading" modal if an op was not found, log to console
  • Improvement: Text editor diagnostics now include the codemirror editor syntax diagnostics
  • Improvement: Improve activity/dataflow performance / less framedrop when creating new cables
  • Improvement: Add option to disable sending error reports in the editor

Timeline

  • Bugfix: Fix rounding error and positioning of timehead cursor
  • Bugfix: Fix and improve dragging of ports to and from the parameter panel title lines into/from the patchfield github.com
  • Bugfix: Fix cursors of elements/conflicting with cgl cursor handling github.com
  • Bugfix: Always show shortnames of ops and only newest version in opselect
  • Bugfix: Math expression parsing in number input ports works again github.com
  • Bugfix: Fix bug when code editor showed up blank, when the file was already opened
  • Bugfix: Timeline value drag not registering mouse up eveng and keeps dragging in some situations
  • Bugfix: Fix problem with patchfield scrolls to wrong position after creating a new op
  • Bugfix: Upgrading ops not loosing animation data anymore
  • Bugfix: Fixed bug where commands in palette where not bookmarkable anymore
  • Feature: After loading the patch timeline will scroll and zoom to last saved state
  • Feature: CMD/CTRL + D will duplicate ops, it will also duplicate all cables connected to ops outside of this connection github.com
  • Feature: Text editor remembers the line your cursor was in when reloading the editor
  • Feature: Added edit button and dialog for op summary to manage op tab
  • Feature: Added button and modal dialog to add credits in manage op
  • Feature: Scroll vizOp content, e.g. vizstring by using mousewheel while pressing cmd key
  • Feature: Added a new diagnostics panel below text editor, to show errors about the current source code/port input depending on type etc
  • Improvement: Performance of timeline optimized
  • Improvement: Added commands to set timeline time/frame
  • Improvement: Show a minimalistic upload progressbar when uploading files to the editor, will be cumulated when uploading multiple files at once github.com
  • Improvement: Timeline icon state of play/pause is now correctly updated when using other ways to toggle it
  • Improvement: Restore the view position/zoom and subpatch op when loading the patch after saving
  • Improvement: Improved [c] centering/zooming takes sidepanels into account
  • Improvement: Removed link to old ops in rename op dialog
  • Improvement: Resize corners on patchfield will show resize cursor on hovering
  • Improvement: CMD Z/CTRL Z does not change zoom anymore github.com
  • Improvement: Cleanup of all source code: typescript definitions and jsdoc rework
  • Improvement: Better performance on viztexture ops, textures previews cached internally, can be updated less often than canvas now
  • Improvement: Drag cables with CMD key down to clone cable (was only possible with alt key)
  • Improvement: Op search calculates a namespace similarity score and will rank overlapping namespaces higher
  • Improvement: More op focus animations when op was upgraded/downgraded/replaced
  • Improvement: Red alert triangle is removed, error ops are shown in patch outline
  • Improvement: Reworked table for op dependencies and attachments in manage op tab
  • Improvement: Much better support of scrolling and pinch/zoom with touchpad (macbook)
  • Improvement: Unified and improved handling of attachments and other dependencies in manage op tab
  • Improvement: Most modal dialogs can now be submited by pressing enter
  • Improvement: Unified handling of attachments and libraries in mangage op