beta
cables is under heavy development.
There might be one or another bug, please let us know about it!

changelog

19 hours ago

12 days ago

read our blog post about the november update: undefined

Editor / Ui

  • editor: op search: fixed lag and unexpected change of results... / grey out while searching/waiting
  • editor: op search: penalty points for old version of ops
  • editor: op search: when pressing enter while still searching wait for result to show up then add upmost op
  • editor: search: show extended title content in search results
  • editor: fix shift resizing (to keep aspect ratio) not working every time
  • editor: faster canvas resize
  • editor: preference to hide the icon sidebar
  • editor: fix infoarea resize/close problems
  • editor: helper meshes only drawing when op is really selected
  • editor: subpatch list highlights active subpatch
  • editor: subpatch list now also shows main subpatch
  • editor: better handling of large strings in param panels
  • editor: fix boolean display, always true or false now (not 0)
  • editor: user preferences: choose background pattern for transparent canvas
  • editor: patch asset loading will now start only after the editor is fully initialized
  • editor: op selector fix: some information was hidden
  • editor: bright mode button color
  • editor: upgrade button works better with ports that changed capitalization
  • editor: texture preview is now sticky / must be closed via new close button
  • editor: keyboard shortcuts are now scrollable
  • editor: texture previewer now also shows cubemaps and depthmaps
  • editor: disabling ops now only disables selected ops, not childs / fix crash
  • editor: profiler: shows how many ops are active currently
  • editor: profiler: group by subpatches functionality
  • editor: profiler: group ops by name (e.g. see all time used by "transform ops")
  • editor: better warning when upgrading ops
  • editor: canvas magnifier lens and colorpicker helper
  • editor: file library: fbx and obj files are not automatically converted to glb/gltf files after upload
  • editor: file library: add GLTF/GLB versions of example 3d files
  • editor: file library - added new head gltf model
  • editor: file library: use newest version of AudioPlayer as default op for audio files
  • editor: find - search for ops with errors/warnings/hints
  • editor: pressing shift+e opens the 1st string port on an op
  • editor: timeline splitter element no longer renders over the editor tab
  • editor: patch settings now show legal information
  • editor: json-explorer on outObject and outArray
  • editor: attachments are now correctly loaded after edit and reload of editor
  • editor: on cloning an op markdown documentation and layout information is retained
  • editor: json is now being syntax-highlighted in ParseObject and StringEditor
  • editor: cloning an op copies libs and corelibs over to the new op
  • editor: "you dont own this patch" no longer shown for collaborators
  • editor: show which collaborators are being copied over on "save as"
  • editor: export now allows for not exporting backup files, default is to include them
  • editor: export of patches with url-reserved characters now possible
  • editor: saving patch when someone else makes changes works now (again)

New Ops

Op enhancement and fixes

Website

  • web: possiblity for user to delete own account
  • web: order by patchname on "my patches" page
  • web: namespaces of shared patches are now selectable in namespace dropdown on "my patches"
  • web: allow for admins to schedule release/maintenance and show to logged in users
  • web: bigger warning for users that are on the dev environment
  • web: landingpage is no longer shown on dev/nightly, redirect to /login
  • web: searchfield in top-nav now includes shared patches in extra tab
  • web: speedup of "my patches" dropdown and all pages showing lot's of screenshots
  • web: stop scrolling when using mousewheel on patch
  • web: fps not dropping to 30 when watching a patch fullscreen
  • web: docs: styling and formatting tweaks
  • web: docs: link to github page
  • documentation : Added section how to convert shadertoy patches into the cables equivalent.
  • documentation : Added guide on how to get started with VR inside of cables
  • documentation: add webgl1 & 2 differences section to docs

Core

  • core: shaderEffects keeping gl primitive setting (e.g. pointmaterial did not work with certain shadereffects)
  • core: put under MIT licence
  • core: remove duplicate unused uniforms before compiling shader
  • core: copy extensions to new shader when copying a shader
  • core: corelibs - cubemapframebuffer - remove clear color at renderEnd() (for PointLight clear color fix)

Export

  • exported patch: canvas now has tabindex property/ so that it can receive kreypresses
  • exported patch: fixed a bug when embedding and initializing non existing variables
  • exported patch: finishedLoading callbacks first parameter is now patch object
  • exported patch: now include legal.txt with licence information
  • cables-cli: command line export now allows for skipping of backup export using the -b switch
4 months ago

New Ops

Op Enhancements and fixes

User interface Editor

  • UI: upgrade button for outdated ops
  • UI: fix "create variable" button in op select dialog
  • UI: texture preview is now behind patchfield
  • UI: when leaving a port value input field with an invalid value, reset value to last valid
  • UI: pressing shift while resizing renderer will keep aspect ratio
  • UI: filemanager: better automatic file type to op assignment
  • UI: you can now upload and use webp files as textures
  • UI: inspect output objects: values are now syntax highlighted
  • UI: inspect output objects: now show unescaped html characters
  • UI: inspect output objects: can now be searched using browser search (ctrl/cmd+f)
  • UI: "patch statistics" command
  • UI: when copy pasting linked values, the current value of the link is copied (when output op is not selected)
  • UI: ops can now filter by file suffixes, not only by file type
  • UI: command palette: scrolling via cursor keys now also scrolls the whole list
  • UI: fixed problem where parameter panel was too large, when using the command "scale renderer" < 1
  • UI: fix: backups were not showing up anymore when patch gets bigger
  • UI: op attachment editor now can open multiple editor for attachments that have the same name
  • UI: fix a bug where it showed an nonsense exception when opening an op attachment editor
  • UI: fixed bug where changing the title did not work
  • UI: fix crash when clicking (+) button to add a texture op
  • UI: fix syntax highlighting/error checking for plain text editors
  • UI: fix FPS counter below renderer when limiting FPS
  • UI: port values in parameter panel are now always displayed without exponent notation
  • UI: object output parameter panel now indicates if a object is null
  • UI: file library: removed old files/nonsense files etc. / added glb example files
  • UI: editor: url parameters are copied to editor frame, so you can use UrlQueryParams ops to read parameters in the editor
  • UI: texteditor: core-ops now format code on save, userops present a "format" button on the editor
  • UI: when adding a lib or corelib to an op a modal suggests a reload of the page

Serverside and Access Rights

  • server exporter: skip duplicate files in zip file
  • server exporter: exported patches show an error message when trying to load files without a webserver
  • server: "make owner" now works for non-admins, button is only being shown for owner
  • server: collaborators are now copied over to projects when using "save as"
  • server: userops are now "shareable" in public patches and between collaborators
  • server: corelibs and libs that are attached to userops are now being loaded for collaborators
  • server: userops are now available for collaborators on a project
  • server: userops are now shared between live/dev/nightly

Core changes

  • core: shader respect the hierarchy and extend copies of current shader
  • core: patches with lots of ops load a lot faster now
  • core: fix bug with blendmode problems/premultiplied colors
  • core: fix rare bug producing corrupted textures when loading a new one while old url was still being loaded
  • core: fix problems with google swiftshader compatibility
  • core: new way of using internal core libs for ops
  • core: rewrite cubemap handling

Website

  • web: udpated showcase page: undefined
  • web: /browser rewrite / more params and linkable results
  • web: docs also show "hidden" ports
  • web: patch page: show edit button only if user has rights to edit (e.g. secret urls)

Docs

  • docs: docs are now more integrated: undefined
  • docs: open sourced documentation: undefined
  • docs: added faq transparent patch undefined
6 months ago

Editor user interface

  • UI: undo/redo - fix bugs/add many more actions
  • UI: undo/redo - grouping of multiple actions
  • UI: undo/redo - Visual undo history list in meta tabs
  • UI: preferences - new option for wheelmode - set this to mousewheel if your mousewheel is scrolling / not zooming
  • UI: preferences - switch between minimalistic or full op search dialog
  • UI: search results - highlight subpatch name when in current subpatch
  • UI: search for :outdated - show ops that could be replaced with a newer version or are deprecated
  • UI: patch-export - now shows patch variables and exports them to docs.md (again)
  • UI: patch-export - now shows callbacks provided by the patch and exports them to docs.md
  • UI: op params - show value for connected string input ports
  • UI: op params - download button next to file inputs
  • UI: subpatch navigation fix positioning
  • UI: canvas info area - show webgl version, if not default/v2
  • UI: subpatch list is now sorted by name
  • UI: fix bug where FPS was counted wrong and too big

Website

  • Web: more projects were added to "made with cables" undefined
  • Web: better signup email confirmation workflow
  • Web: repository for docs: undefined
  • Web: fix: loggedin users can now see patches that they have a secret-url for

Ops enhancements and fixes

New ops

core

  • core: fix: it was possible to create textures bigger than allowed by webgl implementation
  • core: fix: cases when op libraries where not loaded
  • core: core is now able to load "modules" seperatly, export only consinsts of used modules
  • core: ability to load and export core libraries as they are used
7 months ago

New ops

Editor user interface

  • UI: canvas menu for seting up which op transform gizmos and helper are shown
  • UI: canvas focus button to quickly change aspect ratio or resolution of renderer
  • UI: better support and automatic detection of touchpads and apple mouse
  • UI: file view: more file type icons / library files can now be downloaded/searched etc
  • UI: ops working with files now show filename in op extenede title
  • UI: search: pressing shift clicking bookmarks/search results will only show op parameters, without scrolling to op (or switching to subpatch)
  • UI: search: ctrl+f/cmd+f always shows search tab
  • UI: search: see all recently used ops
  • UI: better error display of ops
  • UI: fix: editor does not show save button when in read-only mode
  • UI: code tab edit op button reads "edit" when user has rights to edit the op
  • UI: op history: press j/k to cycle between last selected ops
  • UI: editor will pause rendering after 60 seconds of inactivity
  • UI: fixed bug when cursor keys did not work in parameter input fields
  • UI: op parameter header shows if there is a newer version of op available / better warning message and link on op doc page.
  • UI: export patch: option to include all files of the patch
  • UI: command palette: added timeline play/pause/rewind commands
  • UI: varGet/varSet ops filter variables only show by correct type
  • UI: better cache invalidating when uploading json or gltf files
  • UI: performance optimizations of animated op output parameters
  • UI: Mesh helpers now work in WebGL1 aswell
  • UI: cables code-editor now adheres to es2017 standards (async/await)
  • UI: fix bug with "show/hide helpermeshes" not being followed
  • UI: Comment op can no longer throw an error due to MathParser.eval()

Op enhancements and fixes

Website

  • web: util page to debug browser events: undefined
  • web: tweak front page for mobile devices
  • web: my patches list: by default ordered by date of last change
  • web: my patches list: tabs for ordering by create/changed date
  • web: properly integrated "top of the month" to the search and linked to it from the dashboard (undefined)
  • web: likes no longer go off-screen when they are "too many" (undefined)
  • web: images on search/overview now load for the first few patches
  • web: secret url now loads userlibs and userops
  • web: invite collaborator to patches sending mails, not only add them

Core

  • core: vars: create variable helper functions also work for strings now
  • core: vars: getter ops: only show vars compatible to the selected type
  • core: vars: list always sorted by alphabet
  • core: performance optimizations

Github

  • github: updated coding with cables repo with clear examples of creating port types which are now up to date

Cables CLI

  • cables-cli: now supports -h switch to hide "made with cables" (undefined)
  • cables-cli: bugfix: make cables-api export return proper 404 and json on "project not found" error
  • cables-cli: now supports "--assets" to download all/auto/none assets in export

Daplaya

  • daplaya: daplaya no longer displays "made with cables" (undefined)

Discord

  • discord: forum/published patches/social media are posted on our new discord - undefined
10 months ago

a year ago

a year ago

  • Editor Preferences: added zoom speed option
  • Editor Op port output values: click to copy to clipboard
  • Editor: Timeline: easing selection works again
  • Editor: Filemanager filters correct files for current port
  • Editor: Export compatibility option: ES5 transpilation for older browsers
  • Editor: Middle click for quicker linking
  • Editor: Fixed text editor tabs height/cutoff problem
  • Editor: Op search dialog search algorithm improved, e.g. order of words does not really matter anymore
  • Editor: Hold shift key to add ops to selection
  • Editor: canvas resolution field now also shows browser zoom level
  • Web: user settings op page now is now ordered by date of creation
  • Web: Added Github/Coding with cables link to Learn section.
  • Cables-cli: updated undefined
  • Cables-cli: added "combine-js" and "old-browsers" options to cables-cli
  • Core: Fix webgl console warnings in firefox
  • new op: Ops.Value.Preset - State management of all parameters connected to it - Create presets of multiple ops
  • new op: Ops.Systems.ArraySpray - Particle Spray simulation
  • new op: Ops.Mesh.Triangulate2dPath - Triangulate a 2d path to a flat and filled 3d geometry
  • new op: Ops.Devices.OSC.OscNumber - Outputs a single number from a user defined OSC address
  • new op: Ops.Devices.OSC.OscNumbers - Outputs up to 4 numbers from a user defined OSC address
  • new op: Ops.Devices.OSC.OscArray - Outputs an array of data from a user defined OSC address
  • new op: Ops.Devices.OSC.OscMessage - Shows the current active address of an incoming OSC message
  • new op: Ops.Array.GetValuesFromArrayOfObjects - Get an array of values by key of objects in an array
  • new op: Ops.Math.MercatorCoordsArray - Mercator map and center an array of latitudes and longitudes to a local coordinate system
  • new op: Ops.Sidebar.LocalTextureFile - Let the user select a local file as a texture
  • new op: Ops.Array.ArrayPack - Packs multiple arrays into a new array
  • new op: Ops.Array.ShuffleArray3 - Shuffle an array of triplets
  • new op: Ops.Array.FlattenArray - Creates a new array with all sub-array selements concatenated into it
  • new op: Ops.String.CharacterRotate - String rotate characters like a split-flap display
  • new op: Ops.Array.InfoArray2 - min,max and average values of an array3
  • new op: Ops.String.NumTotalLineBreaks - Count number of line breaks in a string
  • Op Enhancement: TextureEffects.Circle - Circle fix position
  • Op Enhancement: Timer op can now be synched to timeline
  • Op Enhancement: pointcloudfromarray input for texture coordinates
  • Op Enhancement: pointmaterial - lookup texture now also affects mask texture
  • Op Enhancement: ObjectGetNumber_v2 - new string type
  • Op Enhancement: ObjectGetObject_v2 - new string type
  • Op Enhancement: ParseObject_v2 - new string type
  • Op Enhancement: SetObjectKeyValue - new string type
  • Op Enhancement: TextureEffects.Scroll - mask parameter
  • Op Enhancement: PointCloudFromArray - fix crash when switching scramble texcoords
  • Op Enhancement: MouseDrag - added input type selection
  • Op Enhancement: ShuffleArray rewrite - now works without any triggers
  • Op Enhancement: Customshader2 - fix bug where vec3 was not updated after saving shadercode
  • Op Enhancement: Array.ArrayLogic user can set value if condition evaluates to true
  • Op Enhancement: Array.ArrayLogic now shows selected mode in UI
  • Op Enhancement: Array.ArrayLogicArray user can set value if condition evaluates to true or false
  • Op Enhancement: Array.ArrayLogicBetween allows pass value when it evaluates to true
  • Op Enhancement: Math.RandomNumbers now generates random numbers when op is created and if seed,min and max. "is changed" Option to output floats or integers.
  • Op Enhancement: Array.ArrayPack2 - Speed optimization.
  • Op Enhancement: Array.ArrayPack3 - Speed optimization.
  • Op Enhancement: Array.ArrayPack4 - Speed optimization.
  • Op Enhancement: Array.TransformArray3- Speed optimization.
  • Op Enhancement: Multiple random number ops can now output floats or integers.
  • Op Enhancement: Array.Array3Average now outputs the correct average values of the array
  • Op Enhancement: Anim.Smooth doesn't break anymore when inc/dec factor is set to zero
  • Op Enhancement: TextureEffects.Shapes2d - now renders correctly on macos
  • Op Enhancement: Array.RandomNumbersArray_v2 - Doesn't output an array of 100 when numValues is set to zero.
  • Op Enhancement: Gl.MainLoop - Now shows in op title, if it's active or inactive
  • Op Enhancement: WebAudio.BiquadFilter - Frequency can now go higher than 1
  • Op Enhancement: Exp.Lsystem_v2 - Fixed bug in rule string creation.
a year ago

a year ago

  • Editor: User settings are now called preferences and have a completly new UI (cables->preferences)
  • Editor: You now have to select a license to publish your patch, this license will be shown on the patch page.
  • Editor: Show warning icon indicator, when network is disconnected
  • Editor: Straight lines mode: cables now have edges
  • Editor: Search: (cmd/ctrl+f) now shows where it found the query
  • Editor: Search shows you selected ops and last clicked entries
  • Editor: Search results can now be navigated using cursor keys
  • Editor: Filemanager can switch between icon or list display again
  • Editor: Filemanager list mode shows file size and date
  • Editor: Filemanager list can be sorted by name/size/date
  • Editor: Filemanager search/filter functionality
  • Editor: Filemanager shows size when selecting multiple files
  • Editor: Exported patch better minification
  • Editor: Added LUTmap example files
  • Editor: SVG path point converter: Now also parses polygons elements
  • Editor: Many tweaks
  • Web: browser info page now checks for WebGPU - undefined
  • Web: Basic examples page has been cleaned up and has new sections and examples - undefined
  • New op: Ops.Array.ArrayPack2 - Packs two individual arrays into a new array
  • New op: Ops.TimeLine.TimeLinePlayer - Bundled timeline controls and timeline information
  • New op: Ops.Gl.TextureEffects.Shapes2d - Generates lots of 2d shapes as a texture
  • New op: Ops.Array.ArrayClamp - Clamps array values to a min and max value
  • New op: Ops.Gl.TextureEffects.PaletteTexture - Generate a palette texture with an array input
  • New op: Ops.Array.PaletteLibrary - Huge palette library in array form. Use with Palette texture op.
  • New op: Ops.Array.ArrayMerge_v2 - Only merges 2 arrays together when 2 are present.
  • New op: Ops.Array.ArraySqrt - Calculates the square root of an array
  • New op: Ops.String.LimitLineBreaks - Limit number of lines in a string
  • New op: Ops.Math.IndexFraction - Return fraction of value by index
  • New op: Ops.Gl.Matrix.RandomGridPlacementArrays - Generate recursive random grid positions for instancing
  • New op: Ops.Array.ArrayLogicBetween - outputs an array of 0 and 1 if array value is between of min and max or not
  • New op: Ops.Html.WindowInfo - size of browser window in pixels
  • Enhancement: Mesh Instancing now also works with non-indexed meshes
  • Enhancement: Ops.WebAudio.AudioAnalyzer - User can now pick FFT size
  • Enhancement: Ops.Gl.Meshes.TriangleArray_v2 - Now renders normals correctly with all materials.
  • Enhancement: Ops.Array.ArrayLogic - User can now define a default value when it evaluates to true
  • Enhancement: Ops.Gl.Matrix.WASDCamera_v2 - Added speed parameter
  • Enhancement: Ops.Gl.TextureEffects.Fog_v2 - Complete overhaul. Much easier to use now. Accepts color gradient texture to control fog color over distance.
  • Enhancement: Ops.Array.InterpolateNumbersArray3 - Doesn't output NaN when index is larger than array length
  • Op Enhancement: New string version: Ops.String.Join - Join array values to a string
  • Op Enhancement: New string version: Ops.Sidebar.SidebarText_v2
  • Op Enhancement: Ops.Gl.Meshes.Cylinder_v2 - option flip mapping to horizontal mode
  • Op Enhancement: Ops.Gl.TextureEffects.Stripes_v2 - added circular mode
  • Op Enhancement: Ops.Gl.TextureEffects.ColorChannel - new alpha masking option
  • Op Enhancement: Tweak scaling of Mesh and renamed JsonMesh3d to Ops.Json3d.Mesh3d
a year ago

  • new op: Ops.Gl.Meshes.ParametricSurface - Creates a 3d mesh from Math expressions
  • new op: Ops.Array.InterpolateNumbersArray - interpolate between all values of an array
  • new op: Ops.Gl.Shader.Shader2Textures - Render a shader to multiple textures
  • UI: remove + button/add button / doubleclick on ops in opselect list
  • UI: subpatch ports can now be renamed
  • UI: fix connecting subpatch outputs in both directions
  • UI: fix copy/pasting of whole subpatches
  • UI: hovering ports now shows values of arrays/strings etc.
  • UI: new tab icons for meta area
  • Fix: mainloop active toggle
  • Fix: Ops.Math.Random2 - replaced rounding of number to floor for correct random distribution
  • API: ops can change title of ports via render.setUiAttribs({title:"do the rendering"});
  • Enhancement: Ops.Gl.Matrix.OrbitControls - reset trigger now also resets position from panning
  • Enhancement: customshader2 show uniform types as ports: int,vec2,vec3,vec4
  • Enhancement: customshader2 better parsing of uniforms
  • Enhancement: Ops.Gl.Phong.LambertMaterial - Added double-sided option
  • Enhancement: Ops.Gl.ShowNormals - Added show tangent & bitangent functionality
  • Rename: Ops.Json.ObjectGetValue renamed to Ops.Json.ObjectGetNumber
a year ago

a year ago

a year ago

2 years ago

2 years ago

  • New op: Ops.Array.ArrayRotate - Rotates the contents of an array
  • New op: Ops.Array.ArraySmoothStep - Applies a smoothstep function to the contents of an array
  • New op: Ops.Array.ArrayPow - Applies a pow function to the contents of an array
  • New op: Ops.Array.ArrayAbs - turns all array contents into positive numbers
  • New op: Ops.Array.FillArrayRandomDuplicates - fill up array to reach given size
  • New op: Ops.Array.PointArray.FillPointArrayDuplicates - fill up points array to reach given size
  • New op: Ops.Points.PointsSphereRandom - Creates random points mapped to a sphere
  • Fix: Ops.Gl.Shader.PointMaterial - now has correct sizes
  • Fix: customshader better uniform management
  • Fix: image compose bugs when using triggeronce
  • Fix: ios artifacts when patch is running in iframe
  • Feature: Ops.Gl.Textures.VideoTexture - output transparent texture while loading
  • Feature: BoolAnim animate only one direction
  • UI: add comments attached to any op in your patch
  • UI: texture preview button for incoming texture ports
  • UI: quick way of adding variables
  • UI: fix wrong unlinking of ops when inserting non fitting op into link center
  • UI: undo of deleting op restores old values
  • Web: patch page menu show qr code for faster mobile access
  • Web: fullscreen button resizes canvas, no fullscreen mode available on ios
  • Web: better navigation menus
2 years ago

2 years ago

2 years ago

2 years ago

2 years ago

2 years ago

  • new op: Ops.Gl.Matrix.Billboard - Rotate an object to always face the camera
  • new op: Ops.Exp.Lsystem - An LSystem is a parallel string rewriting system see: undefined
  • new op: Ops.Trigger.Past - Triggers only once when threshold is crossed
  • new op: Ops.Json.ObjectSwitcher.js - Allows switching between objects
  • new op: Ops.Gl.Meshes.Cross - Draws a cross mesh with controllable thickness and length.
  • new op: Ops.Array.ArraySin - Performs a sin or cos operation on the contents of an array
  • new op: Ops.Array.ArraySum - Adds one number to all values in an array
  • new op: Ops.Array.ArraySubtract - Subtracts one number from all values in an array
  • new op: Ops.Array.ArrayDivide - Divides all values in an array by one number
  • new op: Ops.Array.ArrayModulo - Applies a modulo operation to all values in an array
  • new op: Ops.Array.ArrayMin - Applies a min operation to all values in an array
  • new op: Ops.Array.ArrayMax - Applies a max operation to all values in an array
  • new op: Ops.String.RightPadNumber - number to a string, adds zeroes to reach num decimal places
  • new op: Ops.Audio.MidiJsonNote - Filter midiJson for notes
  • rectangle can now have more than 64k vertices
  • web: "my patches"-page can now be filtered
  • web: menu nav now optimized for mobile devices
  • new command: "find unconnected ops"
  • new command: "find user ops"
  • fix: render2texture: check for max number of MSAA samples
  • UI: you can set color marker for ops manually undefined
  • UI: find better score for ops in current subpatch / show color marker in results
  • UI: fix bug (wrong axis) when pressing A to align ops
  • UI: show multiple lines when dragging multiple links at the same time
  • UI: reset op parameters to default values via op contextmenu
  • UI: added user ops namespace color for better visibility
  • UI: clone op dialog if you don't own the patch
  • UI: many little fixes and tweaks
  • javascript: op coding: better error handling
  • javascript: reduced global scope vars
  • updated made with cables undefined
  • better browser info / responsive layout undefined
  • new tutorial: how to use LSystem undefined
  • new tutorial: custom shader undefined
  • documentation: added "Creating attachments" section
2 years ago

2 years ago

  • new op: Ops.Gl.GlPrimitive - Force rendering of meshes using points,lines or triangles
  • new op: Ops.Gl.Texture2ColorArray - Extract colors from a texture [thanks @lj]
  • new op: Ops.Gl.Canvas2Texture - Convert a canvas to texture [thanks @lj]
  • new op: Ops.Math.Degrees , Ops.Math.Radians - convert radians to degrees and vice versa [thanks @action]
  • worley/cellular/fbm/layer-noise added switch to be tileable
  • patch embedding: new option glCanvasResizeToParent:true
  • fix: customshader bug: not able to save project after editing uniforms
  • fix: webgl 1.0 framebuffer forgetting selected filtering
  • loaded projects now contain all ops of all users of this patch
  • texteditor fix undo history/seperate editor instances for every tab
  • new commands pause / resume execution
  • fix cursor scrolling in op search dialog
  • show "edit code" button when selecting user owned op
  • edit string parameter button bigger
  • possibility to copy patch (and error message) when saving a patch, without having write access
  • many little tweaks and fixes
3 years ago

  • new op Ops.Gl.Matrix.Camera - easier camera op by @action
  • editor: use browser default antialias setting
  • web: layout op reference page
  • web: users will stay logged in, even when restarting the browser
  • embedding patches: quicker way to set variable values: patch.setVariable(name,value)
  • ui: linking an input port to Ops.Value.Value will adopt the previous value and set a title
  • ui: dragging the patch (right click or pressing space) will not loose selection anymore
  • ui: fix "view op code"
3 years ago

  • doc: added 9 tipps to UI walktghrough undefined
  • new op: Ops.Gl.TextureEffects.Noise.WorleyNoise
  • new op: Ops.Gl.Shader.CustomShader
  • new op: Ops.Gl.Shader.Shader2Texture
  • web: you can now set your password in settings
  • UI: project settings: owner is able to change the patch owner
  • UI: new value dragging user interface / dragging values now works on whole field / from left to right
  • UI: op parameter: spacing between value groups
  • UI: text-editor: switch between files via dropdown menu
  • fixed: webgl warning VertexAttribDivisor
  • fixed op textmesh border (premultiplied blendmode)
3 years ago

  • new op: Ops.WebAudio.WebAudioContextRunner - Helper op for unmuting on iOS & Chrome
  • new op: Ops.Sidebar.ColorPicker - Lets you enter / pick a color in the sidebar
  • new op: Ops.Sidebar.DropDown - Drop-down for the sidebar
  • new op: Ops.Sidebar.TextInput - Enter text in the sidebar
  • fix: chrome 66 automatically muting audio playback (sigh)
  • web: improved search functionality undefined
  • web: added possibility to search for ops
  • ui: changed default file list view to list
  • ui: changing file list view will be set after reload
  • ui: file view and timeline opened state will be set after reload
  • ui: new command: create new file
  • ui: it is now possible to edit files on the server (.json,.csv,.frag,.vert)
3 years ago

3 years ago

3 years ago

3 years ago

3 years ago

3 years ago

3 years ago

3 years ago

  • new op: Ops.Gl.Screenshot - download the current screen as .png file by triggering
  • new op: Ops.Gl.QrCode – generates a QR-Code, example: <undefined>
  • new op: Ops.Devices.Mobile.LockOrientation - force screen orientation
  • fix: ArrayBuffer3x - added reset button - does not start at 0,0,0, but on first value given
  • new command: reset renderer size
  • fix: animation renderer: speed + less problems when resizing canvas
  • fix: removed ipad “rubberbanding” when viewing patch in new window
  • fix: mousepicker compatibility with hires screens
  • fix: command: set renderer size can now set size bigger than browser window.
3 years ago

  • op: TextureEffects.ChromaticAberration - new parameters: smooth and masking
  • ui: Op Select - browse ops by namespace
  • fix: patch export now includes all (external) libraries
3 years ago

3 years ago

  • new op: Ops.Gl.TextureEffects.ColorMap - map colors to luminance
  • new op: Ops.Gl.ShaderEffects.Bend - bend objects along an axis (thanks kusma)
  • op fix: Ops.Json.ObjectGetObject – Key input works again
  • op fix: Ops.Json.ObjectGetValue – Key input works again
  • ui: faster startup/loading time of big patches
  • timeline: overview double click toggle area to whole project length
  • timeline: cursor position percentage display
  • patch page: tweaked info display / mobile optimized
  • tweaked/fixed animation renderer/exporter
  • new video tutorial: [embed a cables patch into your website](undefined)
3 years ago

3 years ago

  • web: you can now personalize your profile: <undefined>
3 years ago

3 years ago

  • new op: Ops.Gl.TextureEffects.SSAO2 - new screen space ambient occlustion
  • new op: Ops.Gl.TesselateGeometry - create more triangles in a geometry/mesh
  • new op: Ops.String.SubString - subset of a string between one index and another
  • new op: Ops.String.StringLength - number of characters in a string
  • new op: Ops.String.StringTrim - remove whitespace from start and end of string
  • new op: Ops.String.Lowercase
  • Ops.Gl.TextureEffects.Color - finally has blendmodes
  • Ops.Gl.TextureEffects.Vignette - better controls + color
  • matcapMaterialNew experimental screenSpace normal calculation in shader
  • UI: dragging values of parameters is much slower now / shift accelerates
  • UI: dragging integer port values now only results in integers
  • UI: fixed loading of old patch version
  • core: grey defaultshader now works with shaderEffects/shaderModules
  • core: better switching between glsl version 1 and 3 / compatibility defined
  • tweaked names for many ops
  • web: changed font for better readability and get rid of typekit once and for all
  • web: examples page revamped
3 years ago

3 years ago

3 years ago

  • new op: Ops.Gl.Phyllotaxis calculate phyllotaxis pattern coordinates
  • ui: animation render as modal window / new command “animation renderer” +progressbar
  • new op: Ops.Math.GaussianRandomArray - random numbers fitting a Gaussian, or normal, distribution
3 years ago

3 years ago

3 years ago

  • New Op: Ops.Html.WindowHasFocus - detect if the browser window/tab has focus
  • ui: SubPatch navigation breadcrumb
  • UI: preview image: background toggle by click to see transparency
  • ui: fix: copy and paste subpatches
  • ui: fix export finished window overflow
  • ui: fix bug where previewer made everyting really slow
  • ui: escape: much faster and reactive op add/search
  • ui: more commands
3 years ago

  • Ops.Devices.Mouse.MouseDrag - add option to not limit the value range
  • CMD: new command show changelog
  • UI: create project by choosing from predefined templates
  • UI: rework: bookmarks
  • UI: show changelog since last us
3 years ago

  • ui button to report errors
  • ops display red dot when has an error
  • ui: code editor does not rescale patch
  • ui: file library/editor do not overlap sidebar
  • ui: usersettings dialog
  • ui: more commandpalette commands
  • ui: fix hover info area
  • ui: added a (customisable) sidebar – to customise hit cmd + shift + p, enter a command and tick the pin icon (edited)
  • ui: CMD+ENTER - toggle maximize renderer
  • ui: command palette shows all commands
  • ui: new command open patch website
3 years ago

  • new ops: cubemapCamera, cubeMapFromTextures, cubeMapMaterial
  • fix Ops.Gl.Meshes.Sphere mesh glitches
3 years ago

  • right click drag multiple links at once
  • rework: search (CMD+F)
  • rework: add op UI
  • UI: add op search much faster
  • UI: rendering op layout as images/svg
  • UI: op highlight animation after creating/search+click
  • UI: copy/paste visual feedback
  • UI: rework icons/cursor when dragging links
  • UI: op namespace colors everywhere
  • UI: better Project settings Tag-UI
  • UI: new feature: command palette (CMD+P)
  • UI: theme: high contrast mode
3 years ago

  • feature: randomanim: pause between animations
  • new op: Ops.Gl.GridTransform - transform and arrange elements into a grid
  • fix: basicMaterial - fix bug, texture was showing correct only after reload
  • fix: svgTexture - fixed problem, project could not be saved
  • fix: webCamTexture - performance tweak / enabled/disabled switch (edited)
  • fix: Ops.Gl.Texture wasn’t setting filter correctly in some cases (edited)
  • published video tutorials at: undefined