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

Ops.Anim

Animations

AnimNumber

 always animates to the current value

Bang

 trigger a simple bang animation going from `1` to `0`

BoolAnim

 animate between two values based on a boolean value

FrameRangeAnim

parses string containing ranges of frames and play as coherent animation

FrameRangeAnimSwitcher

switch between multiple anim ranges of a keyframed 3d scene

InOutInAnim

animates after a trigger from 1 to 0 to 1

LFO

 Low-frequency oscillation for animations

RandomAnim

 Animates between random values defined by a min and max value

RelativeTime

 Time since the patch was loaded in seconds

SimpleAnim

 simple animation between two values

SineAnim

 animation in the form of a sine curve (sinus)

Smooth

 Smooths out jumps in values

Snap

 snap at certain points (e.g. while scrolling)

StringTypeAnimation

 Animates a text/string, like it is being typed out by a person

TimeDelta

 measure the time difference between two triggers

Timer

 A timer that can be started, paused and reset by triggering

Ops.Api.Ifttt

IftttTrigger

Triggers a custom event in the maker channel of IFTTT

Ops.Api.SoundCloud

SoundCloud

 Get infos / stream URL from a regular Soundcloud-track URL

Ops.Api.ThingSpeak

ReadEntries

Reads the most recent entries from ThingSpeak

ReadLastEntry

Reads the last entry from a channel from ThingSpeak

Write

Writes a value to ThingSpeak

Ops.Array

process and manipulate collections (arrays) of data

Array1To3

 convert array1 to array3

Array2To3

 inserts zeroes every third item

Array3

create an array of num triplets set to default values xyz

Array3Average

average x,y,z values of an array3x

Array3GetNumbers

 get 3 values XYZ from an array

Array3InterpolateDistributed

interpolate between two arrays

Array3Multiply

 multiply every XYZ member of array3x

Array3RandomSelection

 extract definable amount of random xyz points from an array

Array3To2

remove every 3rd item of an array - changes array length

Array3Transform

transform (translate,rotate,scale) positions in an array3x

Array3VectorDistance

 Returns the distance between 2 points from an array

Array3VectorLength

 Returns the length of a vector from an array 3

Array4toArray3

convert an array4 to array3 by dropping every 4th number

ArrayAbs

 Converts array contents to absolute values - converts all negative numbers to positive numbers

ArrayAppendArray

 Append an array to an existing array

ArrayBuffer

 stores values in an array / fifo array buffer

ArrayBuffer3

 circular buffer for xyz values

ArrayCeil

Round numbers up

ArrayChangedTrigger

 Triggers when any array values or the array length has changed

ArrayChunk

 Extracts x elements from an array

ArrayContains

 check if array contains a string or number (find,search,indexOf)

ArrayDivide

  Divides all values in an array by one number

ArrayFloor

 Round numbers down

ArrayFract

 Returns the fractional remainder of all values in an array

ArrayGetArray

get an array from an array of arrays

ArrayGetNumber

Returns a value from an array

ArrayGetObject

 get an object from an array

ArrayGetString

get a string from an array at [index]

ArrayIterator

 Loop over every element of an array

ArrayIteratorArray

iterate over an array of arrays

ArrayIteratorObjects

 iterate over an array of objects

ArrayLength

 Number of items in an array

ArrayLogic

 Performs logical comparison operations on a single array of numbers

ArrayLogicArray

 Performs logical comparison operations on two arrays

ArrayMath

 Pick from multiple mathematical modes which can all be applied to a single array

ArrayMathArray

 performs a math operations on two arrays

ArrayMax

  Applies a max operation to all values in an array

ArrayMerge

 merge two arrays - Array 2 is placed behind array 1

ArrayMin

 Applies a min operation to all values in an array

ArrayModulo

 Applies a modulo operation to all values in an array

ArrayMultiply

Multiply every number in an array

ArrayPack3

Packs 3 individual arrays into a xyz array

ArrayPack4

 Pack 4 arrays into one array

ArrayPow

 Applies a Pow function to an array

ArrayPushValue3x

 Adds three values at once into an array

ArrayRandomSelection

 Extract a definable amount of values from an array

ArrayReverse

Reverses an array (creates a copy of the array before), shallow copy

ArrayRotate

 Shift array contents based upon rotate amount

ArraySetArray

put an array into an array

ArraySetObject

put an object at index in an array

ArraySin

 Performs a sin or cos operation on the contents of an array

ArraySmooth

 smooth/average values in an array

ArraySmoothStep

 Applies a smoothstep function to the contents of an array

ArraySubtract

  Subtracts one number from all values in an array

ArraySum

 Adds one number to all values in an array

ArraySumUp

 sum of every number in an array

ArrayToByteBuffer

convert an array to a bye buffer (Uint8ClampedArray)

ArrayToString

 Convert an array to a string, divided by a separator

ArrayTrigger

Trigger an array

ArrayUnpack3

splits a xyz array into 3 individual arrays

ArrayUnpack4

 Splits a xyzw array into 4 individual arrays

Array

 Can generate 3 kinds of arrays. Number - 1,2,3,4 - Normalized - (ContinuousNumberArray)

BoolStateArray

 Array filled with `0`, only one can be `1`

CropArray

Crops an array

FillArrayRandomDuplicates

Fill an array with random duplicates

GateArray

 Only allows an array through if pass through is true

InfoArray

 get the min, max and average value from an array

InfoArray3

 min,max and average values of an array3

InterpolateArrays

 interpolate between two arrays (lerp) - linear interpolation

InterpolateArraysRange

 interpolate between two arrays, only a few numbers at the same time

InterpolateNumbersArray

 interpolate between all values of an array

InterpolateNumbersArray3

 get interpolated values between the indices of an array3x

IteratorArray3

 Iterates over an array in steps of three and outputs three values

LissajouseSpline

 generate spline using lissajous formulas

LoopArray3

 makes the 1st and last point of an array the same, good for closing splines and shapes

ParseArray

 Parse a string into an array (create)

PerlinArray

 Creates An array filled with Perlin noise values

RandomNumbersArray

 Generate an Array of Random Numbers (was: randomArray)

RandomNumbersArray3

 Generates a random array of numbers (was: RandomArray3x)

RandomWordsArray

Generates an array filled with random english words

ReduceArray3

Copies only every x point from an array

ReverseArray3

 Reverses an array with value triplets [x, y, z, ...]

RingBuffer

 Array of fixed size, index is automatically incremented and restarts after reaching the end

RingBufferTextures

Stores various textures in an array, starts at the beginning again when end reached

SetNumberArray

 Change the Number of an array at an index

SetNumbersArray3

 set three values at position index in an array

ShuffleArray

Randomizes the order of elements inside an array

SimplexArray

 Creates An array filled with Simplex noise values

SmoothArray

 Smooths out changes in values of an array

SortArray

Sorts an array of numbers with one of two modes - ascending or descending

SortArray3

 Sorts an array with the lowest values of the selected component.

SortArray3ByDistance

 sort an array3, by the distance of each point to the previous point

SplineLengthArray3

 Returns a number with the total distance between the points/items in an array3

SplinePositionAtDistanceArray3

 get position in array3/spline at distance from start

SubdivideArray1

 For subdividing splines, smoothing lines using cubic bezier interpolation

SubdivideArray3

 For subdividing splines, smoothing lines using cubic bezier interpolation

SwitchArray

switch between multiple arrays

SwitchArrayOnTrigger

switch between multiple arrays

WeaveArrays

Weaves two arrays together (combine, join, merge)

Ops.Array.PointArray

process and manipulate collections (arrays) of data

Field

 generate coordinates for a rectangular field of points

FillPointArrayDuplicates

fill a XYZ array with existing duplicate points until it reaches the length

RedistributeSplinePoints

recalculate a spline / change number of points of a spline

Ops.Audio

Bang

Outputs a number going from `1` to `0`, synced to the music (flash-effect)

BpmTap

Let’s you tap in a beat, useful to synchronise visuals to music (VJ, sync, sound)

MidiJson

 read MIDI information at time x

MidiJsonNote

filter midiJson for notes

SpeechRecognition

speech to text recognition

Ops.Boolean

And

 Outputs `true` if both input values are `true` (boolean)

BoolToNumber

Outputs `0` for `false` and `1` for `true` (converter, boolean)

IfFalseThen

Triggers if input value is `false`

IfTrueThen

Switch, trigger one or the other trigger port based on the input value

IsOne

Returns `true` if input value is `1`

IsZero

Returns `true` if input value is `0`

MonoFlop

 Sets output to `1` when triggered, turns back to `0` automatically after x seconds

Not

result is false if input is true and vice versa (negate/toggle/switch/!=)

Or

Returns `true` if one or more of the input booleans are `true`

ParseBoolean

parse boolean from string/number

ToggleBool

Toggle a boolean value by triggering

ToggleBoolValue

Inverts a boolean value (negate, flip, not)

TriggerBoolean

trigger true or false values

TriggerChangedFalse

Triggers next only after value has changed to `false`

TriggerChangedTrue

Triggers next only after value has changed to `true`

TriggerOnChangeBoolean

Triggers when boolean value has changed

Ops.Cables

Filter: All dataInfo 

AssetPathURL

outputs the path to the assets

FPS

Returns the current frames per second

PatchInfo

read patch config when embedding on another page

UIMode

Outputs `true` if patch is executed in the cables editor (UI)

Ops.Color

Filter: All converter 

ColorPalettes

 Contains a collection of nice color palettes

HSBtoRGB

 Converts a color from HSB to RGB (conversion, HSV, HSL, colour, mode)

HexToRGB

Converts a hex color like `#ff0000` to number values

Ops.Date

DateAndTime

 Returns current date and time

DateDifference

Calculates the difference between two timestamps

DateTimestamp

Calculates the timestamp of a date by year / month / day / hour / minute

Ops.Debug

Console

Shows console log output on the screen

GlDebug

see current gl states and error message

Log

Prints something to the developer console

ProfileGL

dump all gl commands of one frame to console

StopWatch

Measure the time used to render all child nodes in milliseconds

Trace

Outputs a stack trace to the console

Ops.Device.Mobile

ShakeGesture

Reads the accelerometer data from a mobile device

Ops.Devices.GamePad

Filter: All hardware 

GamePad

 Outputs the button states of a gamepad

GamePadJoystickAxis

get axis and angle of a joystick/thumbstick

GamePads

 list connected gamepads - press a button to connect

Ops.Devices.Keyboard

Filter: All hardware 

CursorKeys

 get the state of your keyboards arrow keys

KeyPress

 triggers when a key is pressed

KeyPressLearn

triggers when certain key is pressed or released

QWERTYtoMidi

 Emulates a MIDI keyboard using your regular keyboard

Ops.Devices.Midi

Filter: All hardware 

DeviceList

 list of midi devices

LaunchPadScroller

Scroller for Novation Launchpad Mini

MidiCC

 read CC value from Midi controller

MidiChord3

 Map 3 midi notes to values

MidiClock

 sends out midi clock signals as triggers

MidiInputDevice

 connect to MIDI device output port

MidiKeyPressed

read midi key press events

MidiMonitor

 detailed information about Midi events being sent

MidiNRPN

 read NRPN value from controller

MidiNote

 Read a single midi note

MidiNoteFilter

 Only read a range of notes (e.g. C1 to C2)

MidiSend

Send a midi event to another device

MidiTranspose

 transpose incoming midi notes

MidiValueToNote

 Converts a MIDI value to a note string

Ops.Devices.Mobile

Filter: All hardware 

DeviceVibrate

vibrating a mobile device

GeoLocation

 tries to get the geo coordinates from the mobile device/browser

LockOrientation

locks orientation to landscape or portrait mode

MotionSensor

get values from the device motion sensor mobile

Pinch

detect two finger pinch gestures on touchscreens

ScreenOrientation

get orientation of the physical screen

Ops.Devices.Mouse

Filter: All hardware 

Mouse

 Get mouse coordinates and events

MouseButtons

Get the state of mouse buttons

MouseDrag

 get delta of mouse position while dragging

MouseWheel

 outputs a absolute value controlled by the mousewheel (scroll, zoom)

Ops.Devices

Filter: All hardware 

TouchGesture

detect touch gestures like swipe and pan

TouchScreen

touch screen input: e.g. position of fingers

Ops.Exp.Gl

Experimental Ops
Filter: All cameras hardware 

Circle2

Creates a circle mesh

DeviceOrientationCamera

gyroscope motionsensor camera

MorphGeometriesFaces

morph individual faces between two geometries

ShadowSource

 add shadows to a 3d model

SplineDeform

 Deform a mesh along a spline

VectorFieldArray

 use pixel luminance texture to rotate/scale a mesh in a grid field

Ops.Exp.Gl.Physics.Body

Experimental Ops

PhysicsCube

 physical body in form of a cube

PhysicsSphere

 Physical Sphere Body

Ops.Exp.Gl.Physics

Experimental Ops

Cannon

shoot physic objects

CastRay

 cast a ray and test intersection with physic bodies

SetVelocity

set velocity of a physic object

World

start/configure a world with physic simulation

Ops.Exp.Gl.Shader

Experimental Ops

CustomShader2

 Write your own custom shader

SetMaterialParameters

edit shader parameters

SetUniformValue

set a uniform value of the current shader

Ops.Exp.Gl.ShaderEffects

Experimental Ops

AreaRotate

rotate vertices in an area around a center point

Fur

 experimental fur shader

LimitMeshByTexCoord

 discard pixel if texture coordinate is below threshold

Shadow

 adds shadow to a material

Ops.Exp

Experimental Ops
Filter: All generator 

LinesFromPoints

Connects all points to lines

Lsystem

 Lsystem generator

MatrixToCssTransform

convert webgl modelmatrix to css transform matrix

RenderAnim

 render an animation and save as file webm video or png image sequence

Ops.Exp.Ui

Experimental Ops

DisplayValue

show a value in the patchfield

Ops.Game

PersonController

 simple controller example op for game characters

Ops.Gl

WebGl Ops

AspectRatio

 set fixed viewport aspect ratop and letterboxing

BlendMode

 change how colors are mixed (blending/mixing modes)

CalculateNormals

calculate normals of a geometry

Canvas2Texture

convert a canvas to texture

CanvasFocus

is canvas focussed ?

CanvasInBrowserViewport

check if webgl canvas element is in the current browser viewport

CanvasSize

the size of the canvas in pixels, aspect ratio and pixel density

ClearColor

 sets all cleared pixels to one colour. Use to change the background colour.

ClearDepth

 Clears the depth buffer (zbuffer, z buffer)

ColorMask

 enable/disable color channels RGBA

ColorPick

 pick a color at x,y coordinates of canvas

DepthTest

change depth testing method (depthMask,depthWrite,depthFunc)

DirectionalTranslate

 translate away from a point in space

DownloadTexture

 download a texture as png file

DrawTextureMapping

 draw texture mapping coordinates

FaceCulling

 faces hidden from the viewer will not be rendered when enabled

GlInfo

information about the webgl context

GlPrimitive

force rendering of meshes using points,lines or triangles

GradientTexture

texture containing a colour gradient that can be altered with an editor

GridTransform

 transform and arrange elements into a grid

Identity

reset all transforms (modelmatrix)

IdentityViewMatrix

reset the view matrix (cameras etc.)

IgnoreInShadowPass

do not trigger next when rendering the shadow pass

ImageSequenceAnim

 play a image sprite animation

InteractiveRectangle

 an area which is interactive

LetterBox

Sets an aspect ratio

LineFont

 A Simple way to write text on the screen.

MainLoop

Trigger other ops once every frame to create smooth animations (renderer)

MeshInstancer

 Draw the same mesh multiple times on the GPU

MeshMorph

morph from one geometry to another

MeshSequence

 morph between a series of meshes

MorphGeometries

morph between two geometries and render it

NormalizeScreenCoordinates

convert screen pixel coordinates to range 0-1

OnResize

will trigger when canvas was resized

Orthogonal

 Orthogonal projection / objects in distance don't appear smaller (isometric)

Performance

Show WebGl Performance Statistics

PerformanceMeasure

Measure the time used to execute all child ops

Perspective

Adjust FOV, field of view, and frustum clipping

Phyllotaxis

transform objects to look like the phyllotaxis pattern

PointCollector

save points/coordinates in an array

PointCollectorCollect

collect world space coordinates into an array

PointCollectorScreenCoords

collect screen pixel coordinates into an array

QrCode

 generate a qr code as a texture

RandomCluster

 Transforms objects randomly in space

RandomizeTriangles

 randomize order of triangles in a geometry

Render2Texture

Render something into an Image

Render2Textures

 render to multiple textures at the same time

RenderGeometry

 Render a geometry as mesh

SaveScreenShot

download the current screen content as png file

ShowNormals

 visualize normals of a geometry

Spray

 Spray simulation

SurfaceScatter

scatter object on the surface of a mesh

SurfaceScatterInstanced

 Scatter an object on the surface of a mesh with different distribution methods

SvgPathes

extract pathes from a svg json

TesselateGeometry

 create new triangles in a mesh (subdivide)

Texture

Load an image as a texture

Texture2ColorArray

 extract colors from a texture

TextureArray

create an array of textures

TextureArrayLoader

 load multiple images into an array

TextureArrayLoaderFromArray

 load multiple texture from filenames given as an array

TextureFromColorArray

 create a texture from an array of number values

TextureToPoints

 Create points by sampling texture

Viewport2

force a viewport aspect ratio

Ops.Gl.CubeMap

WebGl Ops
Filter: All cameras 

CubeMapCamera

render a scene to generate a cubemap

CubeMapFromTextures

combine 6 textures to a cubemap

CubeMapMaterial

cubemap as material

Ops.Gl.Geometry

WebGl Ops

AlignGeometry

 align a geometry / change its pivot / center / origin point

DivideGeometry

 disconnect faces/polygons of a mesh

FlipNormals

flip all normals of a geometry

GeometryBounds

 boundings of a geometry / draw a bounding box / (width,height,length,size)

GeometryInfo

information about a geometry

GeometryMerge

 merge two geometries to one

GeometryPoints

 get vertices of a geometry as array3x (vertex vertices)

ScaleGeometry

uniform scaling of geometry vertices

SortGeometryAxis

sort geometry triangles by position

TransformGeometry

 transform vertices of geometry

Ops.Gl.Matrix

WebGl Ops

ArrayPathFollow

 interpolate position on a spline/array3x

ArrayPathFollowParticles

 render lots of particles following a path/spline/array3x

ArrayTranslate

iterate over an array3: translate to xyz, then trigger next op

Billboard

 rotate an object to always face the camera

Camera

 Transforms and projects the scene from the point of view of the camera.

CircleMovement

Animate objects to move along a circle

CircleTransform

Transform following Meshes around a Circle

Coordinates

 current xyz coordinates (modelmatrix)

GetModelMatrix

get current modelmatrix

GetProjectonMatrix

 get current projectionmatrix

GetViewMatrix

get current viewmatrix

InterpolateMatrix

interpolate between two matrices

LookatCamera

 transforms view to look from eye to center

MatrixMul

multiply modelmatrix

MatrixTranslation

 get translation of a matrix

MulViewMatrix

multiply view matrix

MultiplyModelMatrix

multiply model matrix

OrbitControls

rotate your object by clicking and dragging the mouse

Quaternion

multiplies current modelmatrix with a quaternion

RandomGridPlacement

 place random objects on a grid

Scale

Scale all child objects

ScaleXYZ

enlarge or shrink objects by a scale factor for every axis

ScaleXYZViewMatrix

 scale xyz of viewmatrix

ScreenCoordinates

screen/pixel coordinates of the current transform

ScreenPosTo3d

 convert screen coordinates to 3d coordinates

SetProjectionMatrix

set a projection matrix

Shear

 displaces each point of a mesh in fixed direction

Transform

Transform objects in 3d space (rotate, translate, scale)

TransformMul

multiply current modelmatrix

TransformView

transform the viewmatrix

Translate

Translate objects (move / position in 3D space)

TranslateView

translate the view/camera matrix

ViewMatrixTranslation

get the current position of viewmatrix/camera eye

WASDCamera

simple camera you control with W,A,S,D keys like in a FPS game

Ops.Gl.Meshes

WebGl Ops

CablesLogo

 cables logo mesh/geometry

Circle

Draws a circle

Cone

 draw a cone

Corner

 render a rectangular corner

Cross

 Draws a cross with controllable thickness and length.

Cube

 draw a cube

Cylinder

 draw parameterizable cylinder (aka tube,pipe,round,circle)

FreeFormPlane

 a freely deformable plane

FullscreenRectangle

Draws a rectangle using the full WebGL canvas size

Grid

 draw a simple grid of lines

HeightMap

 generate a rectangular mesh where the height is defined by the luminance of an image

Helix

 generates a helix, spiral spline

Icosahedron

 Renders a icosahedron (polyhedron with 20 faces)

Line

 Draw a line between two points

LinesArray

 an array of lines

ParametricSurface

 Creates a 3d mesh from a 2d area expressions

PointCloudFromArray

 visualize an array of coordinates as points

Polyhedron

 generate polyhedron meshes

Pyramid

 render a pyramid mesh

RandomPointSphere

 draw a sphere of random points

Rectangle

 Draw a rectangle

RectangleFrame

 Draws a rectangle frame

RectangleRounded

 Draws a rectangle with rounded corners

SimpleSpline

 Draws a simple spline only one pixel wide

SimpleWireframe

 Simple Wireframe Line Renderer

Sphere

 draw parameterizable sphere

SplineMesh

 Draws a filled Spline with configurable thickness

Star

 draw a star mesh (saw,gear)

SuperShape

Renders a super shape

TextMesh

 Draws text onto a mesh

Torus

 draw a torus (doughnut, donut, ring mesh)

Triangle

 Draw a triangle

TriangleArray

 Draws multiple triangles using coordinates from an array

TriangleSphere

 a sphere mesh with uniform distributed vertices

VoronoiLines

 Render lines from the Voronoi op

Ops.Gl.Particles

WebGl Ops
Filter: All pointArrays 

PointCloudFile

 load and display a pointcloud file

Ops.Gl.Phong

WebGl Ops

LambertMaterial

simple shaded material

PhongMaterial

a shaded material for lighting objects

PointLight

point light for phongmaterial shading

Ops.Gl.Shader

WebGl Ops
Filter: All dataInfo 

BasicMaterial

A material without shading

ChromaKeyMaterial

 display texture and replace a color with transparency

CustomShader

 write your own shader

ErrorMaterial

draw meshes using the cables error material shader

FrontBacksideMaterial

 see which faces are facing the camera

IBLMaterial

  image based lighting material using cubemaps

MatCapMaterialNew

Easy to use image based lighting Material

Picker

Test if the mouse hovers over drawn elements

PickingMaterial

Test if following meshes are picked by the picker

PointMaterial

 Draw all vertices as points / circles

SetShader

Sets a shader

Shader2Texture

 render a shader into a texture

Shader2Textures

 render a shader to multiple textures

ShaderDefine

Set shader defines

ShaderInfo

view current shader source code

ShowNormalsMaterial

 render mesh normals as colors

ShowTexCoordsMaterial

 visualize texturecoordinates/UV mapping of a mesh

SwitchShader

Switch between two shaders

TextureLookupColorMaterial

 lookup color values from a texture and use it as object color

WireframeMaterial

 Renders following meshes as wireframes

Ops.Gl.ShaderEffects

WebGl Ops

AreaDiscardPixel

 do not draw pixels inside a defined 3d area

AreaScaler

 modify scale of meshes in an area

Bend

 bend objects along an axis

Bulge

 displace vertices by the value in a texture

ClampVertexPosition

 clamp/restrict the vertex position to min/max values per axis

ColorArea

 colorize all meshes around x,y,z

ColorizeInstancedMeshes

 colorize instanced meshes by picking random color from atexture

CubeMapReflection

 add a reflection to any material

DeformArea

 deform a spherical area of a mesh

ExplodeDividedMesh

 explode a (divided) mesh in the direction of faces normals

Fog

Fog as a shadereffect applied to a material

GrassWobble

 simulate grass motion in wind

InstancedPerlinPosition

 displace position of instanced object by perlin noise value

MeshPixelNoise

 3d space noise for mesh materials

PerlinAreaDeform

 Displace vertices using perlin noise animation

Render2TexturesSlots

 select textures to render to

ScaleByNormal

 scale vertices of an object in the direction of face normals

SplineRepeatInstanced

 Repeat a mesh along a spline using instancing

TransformInstanced

 transform instanced object

Twist

 twist a mesh around an axis

VertexDisplacementMap

 Displace the vertices of a mesh with the pixels brightness values from a texture

VertexNumberLimit

 only draw the first X vertices of a mesh

VertexPositionFromTexture

 set vertex positions from texture color values

VertexSinusWobble

 sine wave vertex displacement

Ops.Gl.TextureEffects

WebGl Ops
Filter: All generator 

AlphaMask

set alphachannel of current imagecompose via a texture mask

BarrelDistortion

 simulate fisheye effect

Blur

 Blur the pixels of an image

Border

 Draws a Border around the current ImageCompose

BrightnessContrast

 adjust image brightness and contrast

BulgePinch

 bulge and pinch an image (deform,stretch,distort)

CheckerBoard

 draw a checkerboard pattern

ChromaticAberration

 simulating lens effect by shifting rgb channels

Circle

 draw 2d circle into texture

Clarity

Increase contrast in midtones

Color

 fill image using a color (overlay)

ColorBalance

 change intensity of r,g,b channels

ColorChannel

enable disable RGB color channels

ColorMap

 colorize a black and white image using a gradient texture

CustomTextureEffectShader

 Use custom shader as a texture effect

DepthTexture

 draw the content of a depth texture

DepthTextureFocus

 draw a gradient mapped to depth buffer values

Desaturate

 Remove colors from image / greyscale

Dither

 convert color to balck and white patterns

DrawImage

 Draws an image into a composition

EdgeDetectionFreiChen

draw only the edges of an image

EdgeDetection

 Draw only the edges of an image

Emboss

 Emboss / bevel effect

FXAA

 post processing antialiasing

Flip

 flip the image on x or y axis

Fog

 objects further away are colored to enhance the perception of distance.

GammaCorrection

 Allows for Gamma correction of a texture

Gradient

 Draws a simple gradient between three colors

GridTexture

 Creates a grid texture

Hue

 Adjust Hue of current ImageCompose

ImageCompose

Compose Images and effects as layers to generate new Images

Interlace

 Tv scanlines effect

Invert

 invert image colors

Kaleidoscope

 kaleidoscope effect

LUTMap

 apply color filter/effects by using a lookup texture

Levels

 adjust levels to correct the tonal range of an image

LumaKey

 remove darkest or brightest parts of the image

Mirror

 mirroring image effect

PixelDisplacement

 Changes color lookup for every pixel using a displacement map

Pixelate

 Pixelate an image

Plasma

 Renders a plasma effect

PolarCoords

 display texture using polar/radial coordinate system

Posterize

 reduce number of colors

PseudoLensFlares

 simulate lens flare effect

Rectangle

 Draw a 2D rectangle with controllable parameters

RemoveAlpha

Remove alpha information from image

Repeat

 Repeat Image

RgbMultiply

 multiply image colors by color channel

RotateTexture

 Rotates a texture

RoundCorners

 draw round corners around image (border)

SSAO2

 screen space ambient occlusion

ScaleTexture

 Scales a texture

Scroll

 scroll image

Sharpen

 Adjust image sharpness

Stripes

 Draw stripes into the current ImageCompose

TextureDifference

render the difference of two textures

ToNormalMap

 Convert a black and white map to a normal map

Twirl

 Creates a twirl/spiral effect in a texture

Vibrance

 adjust vibrance/saturation

Vignette

 Simulating an old camera effect of fading away the edges of the image

Waveform

 Generates 4 different waveform textures. Sine, sawtooth,Triangle, Square.

WaveformGradient

 Generate different texture waveforms. Sine, sawtooth and triangle.

WipeTransition

 Uses a BW Texture to reveal the layer underneath.

Wobble

 waving wobble motion effect

ZoomBlur

 directional blur effect

Ops.Gl.TextureEffects.Noise

WebGl Ops
Filter: All random generator 

CellularNoise

 cellular noise

FBMNoise

 fractional brownian motion noise

GlitchNoise

 Creates a black and white glitched texture to use for displacement

LayerNoise

 multilayer perlin noise variation

Noise

 white noise pixel effect

PerlinNoise

 draw perlin noise into an image

PixelNoise

 Pixelated noise

PolkaDotNoise

 noise circles

SimplexNoise

 simplex noise generator

TriangleNoise

 noise made from triangles

ValueNoise

 value noise

Voronoise

 Voronoi Noise function

WorleyNoise

 Worley noise

Ops.Gl.Textures

WebGl Ops

ColorTexture

Simple texture filled with one color

CopyTexture

 copy a texture and optionally resize it

EmptyTexture

A very simple empty texture

Graph

 draw a graph of a value into a texture

Histogram

 graphical representation of distribution of color in a texture

NoiseTexture

 Simple noisetexture

SwitchTextures

 switch betwen different textures

Text

Generates a texture which reads Text

TextureInfo

Outputs information about the connected texture

TextureSVG

 Load a SVG image and convert to pixel texture

VideoTexture

 play a video file and use it as a texture

WebcamTexture

 use your webcam camera as a texture

Ops.Gl.Vr

WebGl Ops

MainloopWebVr

 experimental webvr rendering

Ops.Html

Filter: All dataInfo drawText 

AppendChild

Appends a HTML DOM Element to another

AudioMediaElement

Simple Audio Player, using HTML5 Audio, does not need WebAudio

BackgroundImage

 Set a background image of a HTML element

BrowserCheck

what browser is being used

BrowserSpecificFile

 Outputs a specific file for each browser

CSSFilter

 set css filter to html element (blur/opacity/contrast)

CSSProperty

 set css style properties of a html element

CSS

 Define a custom stylesheet

CablesLink

create a cables logo which links to cables gl

Cursor

 set the mouse cursor

DivElement

 Create a html DIV element

ElementChilds

 Set childs of a HTML Element

ElementFadeInOut

 fade html elements in or out

EventListener

Listen to events of an element

FontFile

load a font file like .otf, .ttf, .woff

FullscreenMode

switch webgl to fullscreen

GetCssVariable

gets current value of CSS Variable

HyperLink

 Open another website

IFrame

show another website in an iframe element

MouseCursorImage

 Use image as mousecursor

QuerySelector

Selects an element in the DOM

ReloadPage

reload the website

RemoveAllClasses

remove CSS class [classname] from all html elements that have class [classname]

ScrollPosition

the current x y top left scrolling position of html page

SetCssVariableColor

 set color value of a CSS variable

SetCssVariableString

 set CSS variable string value

TextArea

 textarea html element

ToggleClass

 add or remove css class to/from a HTML element

TransformCSS3DElement

 Transform an Element in 3d space using CSS3D

TransformElement

 move html element to current transformation in screen space

WebGlVersion

which webgl version is being used

WindowHasFocus

detect if the browser window/tab has focus

Ops.Html.Event

CustomEventListener

Add a custom event listener

PreventDefault

Prevents the default on a JavaScript event

StopPropagation

Stop a JavaScript event (bubbling / capturing)

Ops

InteractionListener

Was there mouse movement the last x [duration] seconds?

ObjectChanged

triggers when object input has changed

Sequence

control the order of execution/triggering

Ops.Json

Filter: All converter 

AjaxRequest

Request a json file and output an object (ajax, url, json)

CsvArray

parse CSV files as array

CsvColumnArray

get all values of a CSV column as array of strings

CsvJsonFile

 load a csv json file as array

GateObject

Will only allow an Object to to be output if the the pass through parameter evaluates to true

GetStringFromObject

get string from object

ObjectFunnel

outputs the last changed object

ObjectGetArray

Returns an array from a JSON-object

ObjectGetNumber

Get a number from an object

ObjectGetObject

get an object from an object

ObjectIsNull

check if object is null or a valid object

ObjectIterate

iterate keys of an object

ObjectKeyArray

get array from object by key

ObjectKeyObject

insert an object into an object

ObjectKeyValue

set value for key in an object

ObjectKeys

returns an array of strings, which contain the keys of the object

ObjectOr

result is first connected valid object

ObjectRecorder

record objects and download as json file

ObjectRelay

Let’s a object through only if control bool is true

ObjectSetNumber

set number at key in an object

ObjectStringify

Convert object to string

ObjectToArray

cast an object port to an array port

ObjectToJSON

convert an object to a JSON string (stringify)

ObjectTrigger

set output object when triggered

ParseObject

 Parses a string to a JSON object

SaveJsonFile

 save/download an object as json file

SwitchObject

 Allows switching between objects

Ops.Json3d

Filter: All dataInfo 

ClonedMesh

internal op for json3d instanced/clones meshes

Json3dMesh

 Load Single Mesh from a 3d File, e.g. FBX,OBJ,DAE

Json3dScene2

 load a 3d scene, .fbx, .dae, collada etc.

Material

internal json3d op for setting a material

Mesh

internal op of json3dscene - render a mesh

Mesh3d

 Load a 3D mesh - model into a scene , e.g. .FBX. DAE .OBJ

MeshExplosion2

 create an explosion-effect using pre sliced 3d models

QuaternionChannel

internal json3d op for rotation animations

ScaleChannel

internal json3d op for scale animations

SceneInfo

information about the current 3d scene

SetMaterial

internal json3d op

SetMaterialShader

set a shader that was set up using the overwrite material of json3d scene

TranslateChannel

internal op of json3d scene

Ops.Lottie

LottieSVGPlayer

 Play Bodymovin/Lottie animations as SVG in a HTML element

Player

play/render a bodymovin animation to a texture

Ops.Math

Abs

Returns the absolute, positive value

Accumulator

 Add to and multiply a number, set to current value

AddUp

add up numbers

AngleBetweenPoints

 outputs the angle between two points (degree)

ApproachInterpolation

weighted average interpolation

Array3MultiplyMatrix

multiply every XYZ coordinate with a matrix

Array3x2dProjection

calculate 2d positions of an array3x

Atan2

Calculates the angle from a specified point to the coordinate origin.

Average

average of last two values

ButterflyCurve

generate coordinates of a butterfly curve

Ceil

Returns the smallest integer greater than or equal to a given number

CircleCoordinates

x and y coordinates of a circle

Clamp

Makes sure a value is within range cuts off the rest

Cosine

Calculates the cosine of an angle.

DegreeToVector

 Calculates a vector (x and y) based on an angle in degrees

Degrees

Converts a radian measurement to its corresponding value in degrees.

Delta

difference to the last value (previous, store)

DeltaSum

 add delta values to an clamped absolute value

Difference

Difference between two numbers

Distance2d

 Calculates the Distance between two 2d points

Distance3d

distance between two 3d points

Distance3dNew

distance between two 3d points, calculated when triggered

Divide

Divides a number by another

Ease

 map a value to an easing curve

Exp

Calculates the power of Euler’s number

FlipSign

positive numbers become negative and vice versa

Floor

returns the largest integer less than or equal to a given number

Fract

 returns the fractional part of a number

GaussianRandomArray

 random numbers fitting a Gaussian, or normal, distribution

Incrementor

 increment a number by triggering

Interpolate

Interpolate between values, lerp, linear interpolate

Log

Calculates the logarithm of Number

MapRange

 Maps a value from one range into another.

Math

 Allows different mathematical operations to be applied to two numbers

Max

Sets the output to the input value which is higher

Max2

Returns the biggest number

MaxSinceReset

Outputs the maximum value since reset has been triggered

MercatorCoord

 project mercator coordinates

MinSinceReset

Outputs the minimum value since reset has been triggered

Min

Result will be the smaller number of the inputs

Modulo

outputs the remainder after division of one number by another

Multiply

Multiplies two numbers

NumberDivisible

 is a number capable of being divided.

OneMinus

 subtract a number from one

PerlinNoise

 outputs a perlin noise value like random

Phyllotaxis2

 coordinate generation like arrangement of leaves in some plants

Pi

returns PI (3.141592653589793) * multiply amount

PointInRectangle2d

 test if a point is in or outside of a rectangle

Pow

value of x to the power of y

PowerOfTwoSize

Return the next values as power of two

Radians

Converts a degree measurement to its corresponding value in radians.

Random2

generate random number between min and max

RandomNumbers

simple way to get random numbers without using arrays

RotationFromNormal

Create rotation matrix from normal

Round

Outputs number rounded to the nearest integer

RoundEven

 round to the next even number

Sign

 get sign of value

SimpleMovingAverage

Calculate the Average of the last X values

Sine

Calculates the sine of an angle.

SmoothStep

 interpolate smoothly between two input values

SmootherStep

 interpolate smoothly between two input values

Speed

 measure speed of how much a value changes

Sqrt

square root of a number

Subtract

Subtracts Number2 from Number1 (minus, -)

Sum

Add two values

Tangent

Calculates the ratio of the sine and cosine of an angle.

VectorLength

length of a vector

Ops.Math.Compare

Between

 result is true if value is between number1 and number2

BetweenEquals

 result is true if value is between or equal number1 and number2

Equals

result is true if number1 and number2 are equal

GreaterOrEquals

result is true if number 2 is greater or equals number 1

GreaterThan

 result is true if number1 is greater than number2

IfBetweenThen

triggers when value is between min and max

IsEven

Checks if Value is even or not

LessThan

 Is n1 smaller than n2? (lesser, less)

Ops.Net

AjaxRequestString

request a file from a webserver and output it as a string

CorsProxy

 create a cables.gl CORS proxy URL

Ops.Net.Mqtt

Mqtt

Creates a MQTT connection (IoT, messaging)

MqttReceive

Receives a message via MQTT (IoT, subscribe, listen)

MqttSend

Sends a MQTT-message

Ops.Net.WebSocket

WebSocket

create a websocket connection and receive data from it

WebSocketSend

send an object to a websocket connection

Ops.Patch

CallBack

Executes an external function (external javascript)

Function

trigger from external function when embedded into a website

LoadingStatus

get the loading progress, for displaying a loading screen

LoadingStatusTask

Starts / stops a loading task (async loader)

PlayButton

 shows a playbutton for forcing a simple user interaction

Ops.Points

Filter: All pointArrays 

PointsCircle

calculates a circle path, outputs array3x

PointsField3d

 Generates a 3d point field with controllable amount of xyz points

PointsSphereRandom

 Generates a point field mapped to the surface of a sphere

Ops.Sidebar

Button

 sidebar push button/trigger element

ColorPicker

 Shows a color-picker in the sidebar

DisplayValue

 display a value or string

DropDown

 Shows a drop-down (select) element in the sidebar

Group

organize sidebar elements into groups

NumberInput

Enter a number in the sidebar

Presets

manage sidebar presets

Sidebar

 sidebar overlay to control values

SidebarVariables

 show values of all variables in a sidebar

Slider

 sidebar slider element (range)

TextInput

 Enter text in the sidebar

Toggle

 sidebar boolean toggle/switch element

Ops.String

Filter: All converter 

Base64Decode

 decode a string to base64

Base64Encode

 encode a string to base64

ConcatMulti

Joins multiple strings together

Concat

 Joins two strings together

GateString

Output string if pass through is true

HashIdDecode

read back integers from a hashid

HashIdEncode

generate short unique ids from integers

LeftPad

 create a fixed length string from a number 1 -> 0001

Lowercase

 convert all characters to small letters

NumberToString

Convert a number to a string

ObjectToString

convert an object to JSON string

ParseFloat

Parses a string and returns a floating point number

ParseInt

Parse a string to a integer number

RandomString

generate a random string of given characters

RightPadNumber

 Converts a number to a string with num decimal places, adds 0's

RightPad

 create a string with a fixed length filling the space with a character

Split

Splits a string with separator into an array of strings

StringBreak

breaks into a string after [num] chars

StringCompose

Combine multiple Values to a new String

StringContains

check if string contains another string (find,search,indexOf)

StringEditor

string text editor

StringEquals

check if content of two strings is the same

StringIterator

iterate over every character of a string

StringLength

number of characters in a string

StringNew2Old

temporary string port converter

StringOld2New

temporary string port converter

StringTrim

Remove whitespace from both ends of a string

String

String input/output

SubString

Subset of a string between one index and another

SwitchString

Switch between multiple strings with an index

SwitchStringBoolean

Switch between two strings with a boolean

Uppercase

Convert all characters in a string to upperase

Ops.Templates

MinimalMaterial

Material Example Template

PortsArrayExample

 Is a template for creating Array ports

PortsBooleanExample

 Is a template for creating Boolean ports

PortsObjectExample

 Is a template for creating Object ports

PortsStringExample

 Is a template for creating String ports

PortsTriggerExample

 Is a template for creating Trigger ports

PortsValueExample

 Is a template for creating Value ports

ShaderEffectExample

shader effect example template

Ops.Time

DelayedTrigger

delay triggering next port by x seconds

TimeSinceTrigger

 Get the time since last trigger

Ops.TimeLine

AutoPlay

Automatically starts the timeline playback when opening patch

GotoFrame

jump to a key in the timeline

TimeLineControls

use position and play pause state of cables timeline

TimeLineFrame

Returns the current frame number of the timeline

TimeLineLoop

 Automatic rewind of timeline at a certain time

TimeLineOverwrite

overwrite timeline time value

TimeLinePlay

start timeline

TimeLineRewind

set time of timeline to 0 (rewind, restart)

TimeLineTime

Returns the current time of the timeline

TimeLineUI

 little ui for controlling the timeline

TimelineValue

 get timeline value at [time]

Ops.Trigger

GateTrigger

 Allows a trigger to pass only if the gate is open

IfEqualsThen

triggers if value 1+2 are equal

Interval

Trigger every x ms

NthTrigger

Lets a trigger through every nth time (trigger limiter)

Past

 Triggers only once when threshold is crossed

RandomTrigger

 randomly trigger output ports

Repeat

 Triggers all ops below x times (for loop / while)

Repeat2d

Triggers all ops underneath Num X * Num Y times

Sequence

Control execution order

SetNumberOnTrigger

Outputs a number when triggered

SwitchTrigger

 Triggers one of the out ports (value index switch case)

TimedSequence

 timed switching of trigger

TriggerBetween

trigger if value is between number 1 and number 2

TriggerCounter

 Counts how often the port was triggered

TriggerCounterLoop

 Increments with each trigger and loops depending on min and max loop values.

TriggerDistributeByValue

triggers evenly distributed by value

TriggerExtender

 Extends a trigger (useful in big patches for better overview)

TriggerIfDecreased

trigger if a value decreases / gets smaller

TriggerLimiter

 Limits how often a trigger goes through to x ms

TriggerNumber

Outputs the last number of the input port which was triggered

TriggerOnChangeArray

triggers when array has changed

TriggerOnChangeString

triggers when string has changed

TriggerOnce

Trigger the following childs once

TriggerReceive

 Receives triggers from a TriggerSend op with the same variable name

TriggerSend

 Allows triggers to be sent to a TriggerReceive op with the same variable name

TriggersPerSecond

 Counts how often the port is triggered per second

ValueBecameZeroTrigger

Triggers when the input value became zero

Ops.Ui

Comment

Displays a comment in the patch area

PatchInput

Helper op for sub-patches

PatchOutput

Helper op for sub-patches

SubPatch

subpatch op

Ops.Value

ColorValue

Use a color value on multiple places

DelayedValue

delay a value by seconds

DelayedValueSimple

delay the value data flow by x seconds

FileInput

get URL of a file

GateNumber

 Let’s a number through only if control bool is true, like a gate

MaximumSafeInteger

Returns the maximum safe integer (number, constant)

MinimumSafeInteger

Returns the minimum safe integer (number, constant)

Number

Stores a value, use the same value in different places (was: value.value)

PreviousValueStore

 remember/store last set value

RouteNumber

 Routes the value to one of the output ports (based on index, relay)

SwitchFile

switch between filenames

SwitchNumber

switch between number values by index

SwitchNumberOnTrigger

Sets a specific output value on trigger

TriggerOnChangeNumber

 triggers every time the input value changed

TypeOf

 Outputs the type of the input-port (boolean, number, string).

Value2d

Stores a 2D coordinate

Value3

Stores a 3D coordinate

ValueBoolean

Stores a boolean value

ValueChangeCounter

counts how often different values are set

ValueChanged

 Triggers the next Op if value has changed

ValueChangedTrigger

trigger output when value has changed since last execution

ValueHub

 Copies the input value to the output ports (value sequence)

ValueOrAssignment

outputs value or if false, default value

ValueStringEditor

edit long string values in the editor

ValueSwitchBoolean

switch between two values by a boolean

ValueToggle

Switches two number values using a boolean

Ops.Vars

SetVariableByTrigger

set variable only after being triggered

VarGetArray

 Get a variable array

VarGetNumber

 read a variable number

VarGetObject

 Get a variable object

VarGetString

 String variable getter

VarSetArray

 Set a variable array

VarSetNumber

 set a variable number

VarSetObject

 Set a variable object

VarSetString

 Set string variable

Ops.WebAudio

Filter: All FFT audio 

AnalyserTexture

Creates a texture from an audio FFT array

AudioAnalyzer

 Extracts FFT or Waveform data from the incoming audio signal

AudioBuffer

 Holds an audio file / sample

AudioBufferPlayer

 Plays back audio data stored in an AudioBuffer

AudioPlayer

Plays an audio file, linked to timeline

BiquadFilter

Different kinds of audio effect / filters

Convolver

Audio reverb using an impulse response (sample)

DynamicsCompressor

Compressor audio effect

FFTAreaAverage

 get average value in an area of a fft audio analysis buffer

FftTexture

Generates a texture from audio information

Gain

Changes the gain / volume

KeyPiano

Generates notes based on key presses

MediaPlayer

 Plays back audio files

MicrophoneIn

 Access to the microphone

MidiValueToFrequency

Converts a midi value to a frequency

MultiIn

Connect multiple audio signals to one output

Output

Sends an audio signal to your speakers

Waveform

Outputs the waveform of an audio file.

WebAudioContextRunner

 Resumes the Web Audio context (unmute on Chrome / iOS)

Ops.WebAudio.Scale

ChordTriad

Creates a triad chord

ScaleArray

Outputs a musical scale array (major, minor, ...)

Ops.WebAudio.TextToSpeech

Say

 Text-to-Speech, speaks different languages (speech synthesis)

Ops.Website

Filter: All dataInfo 

Cookie

cookie of the current website as object

DocumentURL

information about the current URL

InfoURL

 Information about the current URL

LocalStorage

read and write values to browsers local storage

UrlQueryParams

Returns a URL query parameter, e.g. index.html?Parameter=ParameterValue