last year in cables

What a weird year it was. Despite all the hardships there has been a lot of stuff going on in the cables universe. Quite a lot actually, as we found out collecting everything we wanted to mention in this blog post.

- Our community grew by about 30%
- We explored streaming to twitch regularly and ended up with weekly Discord meetups
- We released five big updates this year
- We introduced features, bugfixes and improvements in closing 832 issues from our backlog
- We now offer around 1600 ops for all your needs
- 33 videos have been published including examples, tutorials, livestreams, ...
- People created about 47k patches in the time since we started cables. Wow!

cables has been used in workshops at universities, for installations all over the world, for commercial projects, hobby projects, proof of concepts, art and who knows what else. 
Projects using cables won prices in competitions, were seen/used by lots of people and generally made the offline and online world a more beautiful place.

Thank you everyone who made this possible!



Releases

Last year saw five big updates that we made to cables. In February, we gave you GLTF-Support, working with MSDF-Fonts and basic "Multiplayer"-Functionality, April came with a lot of cleanup and fixes, July gave you the possibility to play with physics a bit, made sharing your patches easier working with collaborators and gave you data nerds a bit more functionality on arrays


A huge cleanup and bugfixing release in November still had some impressive new features. We started our inquiry into machine learning by supporting teachablemachines (thanks Mick) and made exporting patches to external services easier. 

We topped of the year with a rehaul of how audio works in cables by making the existing audio ops more foolproof and adding few missing ones

We also plan to have more regular and smaller updates in 2021, so be prepared for roughly monthly news from what can be done in cables now.

But what did you people do with all of that? Let's see:



Top patches of the year

These are the top patches of the year, ordered by likes in descending order, attributed to the patch-owner:

We also had three cables jams, with people competing for the win given certain restrictions and rules. Thanks for all your contributions, keep 'em coming!



Projects

People use cables for work and privately, for money and for free, for arts and commercial projects. 


We know that wirmachenbunt used the GLTF-Ops to create the amazing website for logicxmata.london used it to create their gardenplusx created parts of their new website using cables. 

holon and mfx won prizes at demoparties with cathodoluminescence, gravity and nevoa. Farbrausch released Aphelion. Sofia Crespo and Feileacan McCormick gave us the "arificial remnants".

undev and artifical rome created "born of a dream" together and raumHOCH used cables to power their "gründermotor" as well as the presentation of the "smartquart" grid. undev contributed to the new website of dotfly and made the background animation for the (sadly cancelled) ableton loop conference. 


But that is not everything... to keep you all on your toes about what we already have and what is new in cables, we used twitch a lot to show people what we are up to. And there have been quite a few streams, some educational, some informative and some plain fun.



Streams

We taught you how to VJ - using cables.


We tried to live-copy some pieces of art that we like - using cables.

We talked about behind-the-scenes-stuff and introduced new features and updates - of cables.

We showed you how to make your hat blink or make demos - with cables.

And: kikohs made a whole intdrodiction series for datavizualization - in cables

So as you can surely see: It has been quite a year for cables and the community. Stay tuned for things to come!


Happy new year,
from team cables!

cables intro: data-driven gradient from weather data

let’s build a mask detector using machine learning and cables!

Tutorial machine learning using teachable machines in cables

Cables jam: “Lights & Shadows”

We are starting a new cables jam that you can participate in, right now.


The theme of this jam has been decided by our competent and international table of experts to be "Lights & Shadows".

Rules are simple and as follows: "Use at least the differen light-ops in your patch".

If you want to enter the competition, start patching, make sure you follow the rules, tag your patch with cables_jam_03 and make it public. Be done by 21.12.2020 00:00:00 CET (that is the night from sunday to monday).

We will then do a screening of the patches in the week following the deadline and announce the winners on our Discord session on 23.12.2020.

Not sure where to start? Well...


Here are the ops of which you have to use at least two:


And here is a recording of the livestream where we present the release that featured all these ops (starting at around 21 minutes in). 

We hope that gets you rolling and inspired. Can't wait to see what your come up with!


love,
the jam team

November update

Hey,


we would like to show you some of the cool new things that are coming to cables with this massive update.
The last update of cables happened at the end of July (30.07.2020 to be precise) and a lot of stuff has happened. We managed to close 229 "issues" spanning bugfixes, improvements and new features.

Even though the focus of this update was more on bugfixing and "cleanup" we managed to push out a few new ops and features for you, some of which we'd like to quickly introduce:




More tools for Mesh Instancer

These Ops give you some easy ways to manipulate your instanced meshes without re-uploading everything to the GPU every frame.


Vertex shaders will do the work for you and you can control them using textures. 

You can modify positioning of the meshes using InstancedDisplacementMap and colorize them using InstancedTextureColorize.

This can then be combined with any material and other shaderEffects.




New export options

We are often asked how putting cables patches on your own website works and sometimes we cannot help because every web-hoster does stuff differently.


We are trying to make this process a bit easier by allowing owners of patches to connect 
their individual patches to their github pages or to netlify by providing an API-Key in the
cables ui. 

This will then give owners and collaborators of patches a "one click deployment" to these pages and should give you an easy way to show your creations to the world...

Please feel free to suggest other services in the forum!




JSON structure view

When working with bigger datasets, netsted JSON or remote APIs finding the datapoints that really matter to you used to be really tedious, spreading over several ops, up until now.


This update introduces a few ops that let you select properties of a JSON-Object "by path".
But more important, we put a little "explorer" in there to find the correct ops. Working with deeply nested JSON should now be a lot easier, sometimes even just two or three clicks to get to what you want.




Canvas magnifier

Introducing a new handy little tool to check colors of your rendering. 


Press ctrl+c / cmd+c to copy the selected color to the clipboard!




Transparency workflow

We updated the ImageCompose and DrawImage ops to finally support transparency the way you would expect it. 


Expect more tools to work and modify transparent textures in the future.

Some texture effects will not respect the transparency. We are working on this, please let us know if you find those bugs.


Also worth mentioning:


- Many Improvements to MatCapMaterial and PhongMaterial
- First round of improvements to existing audio ops
- Tweaks and fixes to the raycasting system
- Improved profiling of ops

You can see all the changes of this update in our changelog.

That being said, a huge thank you goes out to everyone contributing to this update, either by code, by reporting bugs or asking for improvements and by helping each others on the forum and on discord, keep up the commumity!

People contributing to this release are (in no particular order): 

That's all folks! Enjoy all the new stuff, and: happy patching!

All the best from,
your undev team

Shadertoy to cables tutorial – part 01

We've just released the 1st part of a new tutorial series on how to port shaders from Shadertoy into cables gl. 
There's also a new section on the documentation with a guide on how to recreate the uniforms.

Copy cat with cables – Inconvergent – Blog post with patches

The last cables live stream was a copy cat edition inspired by the digital artist Anders Hoff, otherwise known as Inconvergent

I've always loved following his work and he's been a great source of inspiration to me throughout the years.
I'd highly recommend checking out his web page as there's a lot of beautiful digital artwork to be found over there.

This blog is going to be a bit longer and more in depth as I'd like to highlight some things I learnt during and after the stream.
I hope you'll enjoy it.

A lot of digital art pieces made with processing and custom software is based upon having a animated system in place and basically not refreshing the canvas each frame.
This means that more and more information gets added to the picture.
A few generative rules can generate a huge amount of output.
This process isn't actually completely real time, due to the fact it takes time to generate the image 🙂

    



Work from Inconvergent



The 1st piece

I was trying recreate this look from Inconvergents DOF tests.
It worked out pretty good 🙂



How to paint on the canvas

This patch shows what happens when we don't refresh the canvas and just animate a circle.
The color and the frequency is all just tied into the timer.
It doesn't look so great but it gets across how the technique works.

The 3D scene has to be rendered into a texture.  We then disable the clear option on the Render2texture op.
Every time we reset we make sure that the clear color is set for one frame, this wipes everything that was already there.

Setting the alpha to a low number and letting the patch run adds more and more detail to the canvas.
That's the entire technique in a nutshell.



Now with 2 animated points to draw a line



Trying to recreate Sand spline 2

It's really almost impossible to recreate a generative art piece so this stream focused on being inspired by the piece itself.
The original from inconvergent below



Screenshot of the live stream patch



The final patch - open the sidebar to play with the parameters



Another piece inspired by Sand splines

New HTML CSS tutorial – CSS property op

We just released the 3rd video of using HTML and CSS ops inside of cables.
This episode will show you how to use the CSS property op to change CSS parameters in real time

New HTML CSS tutorial – Transform element op

We just released the 2nd video of using HTML and CSS ops inside of cables.
This latest episode will show you how to use the transform element op.

New video tutorial series – HTML CSS

As of today we will be releasing new video tutorials aimed at using the HTML and CSS ops inside of cables.
The goal is to keep them as short and informative as possible like our byte sized video series.


The first video will show you how to get started with using the DIV element op to introduce interactivity to your cables patches.