beta
cables is under heavy development.
There might be one or another bug, please let us know about it!
cables Documentation      How To Use            Working with files            Keyboard Shortcuts            User Interface Walkthrough      Beginner Tutorial            Beginner 1: Drawing A Circle            Beginner 2: Transformations            Beginner 3: Color            More Transformations      intermediate            Image Compositions            Post-Processing 3D Scenes      communication            cables API            Communication with an Arduino via Serial            Communicating with Arduino over MQTT      Exporting And Embedding            How to serve files externally and fix CORS headers            Embedding Patches            External triggers / functions            Embedding Patches            Previewing / uploading exported cables patches      coding ops            Creating Attachments            General op/Port Callbacks            Ports                  Dynamic Ports                  Array Ports                  Boolean ports                  Integer Number Ports                  Object Ports                  String ports                  Trigger Ports                  Floating Point Number Ports            GUI/UI attributes            Hello Op - Part 1            Libraries            Developing Ops            Guidelines            Object Ports            Writing Shaders            Web Audio Op Development      HTML and CSS in cables      Lighting            Lights            Shadows      FAQ            Embedding                  How to remove grey rectangles on touch (mobile)?                  Why doesn't the DownloadTexture op work on iOS?                  How to disable page scrolling on mobile?                  Transparent Canvas            Features and Support                  Will there be support for (animated) GIFs?            General questions            Licences and payment                  What licence do i need to use cables?                  Will I have to pay for it in the future?                  How is my work licenced when using cables?            Does cables support midi and OSC?            Shadertoy            Technical questions            UI / Editor            WebGL1 and WebGL2

Beginner 1: Drawing A Circle

First, we need a project to work with.If you're on the main webpage click the Create tab and then Empty Project.
If you're already in a patch click in the top left tab and select New patch then empty.

To draw a circle, we need two operators:

  1. The MainLoop-op
  2. A Circle-op

1.Add the WebGL-op

  • To create an operator press [esc] – the Select Operator-dialog shows up
  • Now type Main
  • The first entry in the list should be Ops.Gl.MainLoop
  • Press [enter] or click the + button to create the operator

2. Add The Circle Operator

  • To create a new operator and automatically connect it to another op you can pull the yellow output port on the left side with your mouse (drag it out of the operator and release your mouse button).

  • The Select Operator-dialog will appear
  • Type circle, now the entry Ops.Gl.Meshes.Circle should be selected
  • Press [enter] or click the + button to create it

Now it should look like this:

3. Parameters

  • The renderer canvas (on the right side) now shows a circle
  • The parameter panel shows all parameters to tweak the circle
  • Play around with the parameters, for example drag the slider innerradius

Part 2

Continue to Part 2 of the tutorial-series to learn how to use transformations.


help cables get better and edit this file on github