Finally, about 13 years late, we hand to you an extensive documentation about one of vvvv's most unique strengths: Spreads. We completely reworked the documentation on the topic and enhanced it with a lot of grayful images like this one:
It may seem a lot to digest at first, but take your time and use it as a reference whenever you're looking for an answer regarding a spreading topic. Specifically the listing of the most important Spread Operations should come in handy for beginners to understand and give them an overview of what spreads are typically used for.
You may note that for a start we have left out more complex spreading scenarios. Still, if one gets a good understanding of those basics all further dimensions should be much easier to grasp. Feedback welcome.
Who Mapping Festival
When Thu, May 7th 2015 - 18:00 until Sun, May 17th 2015 - 18:00
Where Geneva, Switzerland
Registrations are open for the next workshops of Mapping Festival, dedicated to audio-visual art and digital culture (May 7 to 17 2015).
Articulated around various themes and technological explorations, conducted by international instructors who are specialists in their respective fields, the six workshops will be spread over the two weeks of the festival.
Check www.mappingfestival.com for informations and registration.
Deadline: April 5th 2015!
Agit P.O.V. - Bike hacking with led lights (May 8 - 9)
Workshop conducted by Alexandre Castonguay (CA) and Mariángela Aponte Núñez (CO)
During this workshop, the participants will mount a 12-LED circuit, a micro-controller and a battery on their bicycle wheel. They will then be able to use persistence of vision (POV) effect to illuminate the streets during a mobile performance.
Game Design - Short Fiction to Board Game Adaptation (May 8 - 9)
Workshop conducted by Eddo Stern (US) and Douglas E. Stanley (CH)
In collaboration with the HEAD - Geneva
This workshop/masterclass will address various questions related to game design with Arduinity. The instructors will specifically discuss short fiction to life-size board game adaptation.
The Tricodeur - Knitting & Coding (May 8 - 10)
Workshop conducted by Sew&Laine + Louis Eveillard (FR)
The Tricodeur is a hacked knitting machine, which participants will use to address generative design through the creation of simple shapes, enabling the materialization of their knowledge of code on wool knit support.
Opera III - Dance and Interaction (May 8 - 10)
Workshop conducted by Giuseppe Bucci (CH) and Charles Mugel (CH)
In collaboration with the Fête de la danse
This workshop/masterclass proposes to the participants to discover the setup of a choreographic work, and to explore possibilities and constraints related to interaction between movement, sound and visuals thanks to a sensors system mounted on the dancer’s costume.
LED Club Design (May 11 -13)
Workshop conducted by Adrien Boulanger (FR), Yon Aliaga (CH), Gael Abegg-Gauthey (FR), Quentin Berthet (CH)
This workshop will explore the setting-up of a scenography using LED light bars, specially designed for an evening party at the Zoo Club (Geneva). The participants will have the occasion to run the installation during the Mapping Festival opening club night.
Mapping Playground (May 12 - 16)
Workshop conducted by CHiKA (US/JP), Mike Latona (BE), Matt Mets (US) + MAD team (FR/CH) & special guests
During 5 days, the participants will explore new techniques for software, electronics, LED lights, video mapping and interactive installations - all in one place. After learning how to manage and execute an installation, they will turn their ideas into a public exhibition at the end of this workshop.
When Fri, Mar 27th 2015 - 19:00 until Sat, Mar 28th 2015 - 06:00
Where OHM Berlin, Köpenicker Str. 70, Berlin, Germany
Organized by LAB Berlin
Ever thought about starting to learn programming with vvvv? Now is the time: From April 27th to May 3rd 2015 the 4th edition of the NODE – Forum for Digital Arts in Frankfurt/Germany offers a series of 48 workshops that welcome everyone to join the vvvv community.
The large number of workshops may be overwhelming to the beginner, so here is a selection of workshops recommended especially for the novice:
If you've never touched vvvv or you did but are not yet very confident you should definitely first attend either the german or english vvvv for newbies workshop which comprises of a 4 x 3h introduction spread over two days and will provide you with the fundamentals.
If you've already created your first projects but are still unsure about your practices attend Bring Your Own Patch on tuesday afternoon.
Once you're familiar with the basics you have the choice:
Take a break and suck in some theory at the symposium.
In case you can't make monday and tuesday there is another very easy introduction into vvvv offered by the Video Effects and Compositing workshop. Of course not as in depth as the two-day course and much more a focus on the specific topic but still very suitable for total newbies to attend.
Further down the road you may want to apply what you've learned so far and check out Cutting & vvvvolding Paper or learn the basics of VVVV.Audio. And in the evening get some inspiration for how your new skills could one day be applied by watching a series of topofthepops audio-visual performances.
In case the practice ever gets too much for you, note that you can always fall back to nodes comfortable series of 50 minute lectures: Of Patches and Projects. Besides you get to see an extensive exhibition on the forums leitmotif of "The Informed Body".
For completeness: Full Program
And a final word of advice: Don't contemplate about this for too long, most of the workshops already have only a few seats left. Looking forward to patch with you!
Dear NODE lovvvvers,
Hopefully you all know this site already, got lost in the program and promising workshop descriptions and are planning your trip to Frankfurt right now.
BOOK YOUR WORKSHOPS NOW
Just have a look at the program, buy yor week or day pass if you didn't do that so far and log in to book them! As you might know from the schedule there are workshops that last a whole day or even two days. If it's possible for you, please book all sessions of one workshop.
Btw, wondering why there was a delay with releasing the booking system?
We have the best excuse and a very cute reason: Tom, alias baby Jenett-Horn :)
Best regards from the NODE15
Who David Gann
When Tue, Apr 7th 2015 - 16:00 until Thu, Apr 9th 2015 - 20:00
Where Stadtbibliothek Köln, Josef-Haubrich-Hof 1 , 50676 Köln, Germany
A 3D Printer Workshop with VVVV, Blender and Meshlab.
Note it is two dates and you have to sign up at the Homepage of the Stadtbibliothek for each one separately
3D Printing has already reshaped how designers and engineers approach the prototyping and production phase of a new and innovative idea. However this idea may look like, a 3d print always require a 3d model that has to be generated in the computer as a mesh of vertices (3d Points) that are connected in a clearly defined pattern.
The common ways of designing geometry involves hand-shaping those 3d points in a specific software using a palette of tools for modeling. But there are other methods that can significantly enhance our productivity and the quality of the print.
In this Workshop we want to learn and practice a new and promising way of creating a 3d geometry. In a generative design process we define rules and algorithms that build the geometry automatically. In this way we can on the one hand produce very precisely what we want, but there is also plenty of room for experimentation. We can automatically produce hundreds of variations and select the one that we like most. The methods you will learn combine modern advances in computer graphic algorithms (Delauney Triangulation, Tesselation, Spliting and Joining Vertex Buffers, 3d Scanning etc.) and the convincingly intelligent design patterns of nature itself (Plant Growth, Coral Growth, Natural Shapes etc.). This will be learned without writing a single line of programming language as we use the easy and fast to learn toolkit 'VVVV' and the participants can work with a set of prepared VVVV programs. We will also use Blender and Meshlab.
3D-Druck hat sich heute bereits für Designerinnen und Designer sowie Ingenieurinnen und Ingenieure als wichtiges Werkzeug in der Prototyping- und Produktionsphase durchgesetzt. In diesem Workshop lernen Sie mit David Gann neue Methoden zur Herstellung von 3D-Geometrie kennen. In einem generativen Designprozess verwenden wir Algorithmen, um Geometrie automatisch entstehen zu lassen. Die hier behandelten Techniken kombinieren neuartige Computergrafik-Algorithmen mit Designkonzepten, die von der Natur inspiriert sind. Der Workshop behandelt das alles, ohne dass die Teilnehmenden tatsächlich Programmcode schreiben müssen, da wir das schnell und einfach zu erlernende Toolkit VVVV einsetzen.
Die Veranstaltung findet in Raum 304 auf der 3. Etage statt.
Im Rahmen von "Makerspace - Programm für Selbermacher":
Unser Makerspace ist ein offener Raum für neue Ideen, Potenziale und Do-It-Yourself-Projekte. Eigenes Tun steht im Vordergrund, vor allem aber der Spaß an der Sache! Nach einer kurzen Einführung können Sie selbst die verschiedenen Themen und Techniken ausprobieren. Unsere Expertinnen und Experten unterstützen Sie dabei.
Je nach Workshop werden Kenntnisse im Umgang mit der entsprechenden Informationstechnologie (PC, Smartphone oder Tablet) vorausgesetzt.
Stadtbibliothek Köln Josef-Haubrich-Hof 1 50676 Köln - Altstadt/Süd
Due to the great success of our recent Holiday Dongle Discount we're happy to announce today the permanent price drop for vvvv dongles to a gorgeous 125€. Congratulations already, future buyers!
And while we have your attention we'd also like to introduce you to our new:
Classic 100% plastic case.
Priced from 125€
Limited Edition 18-karat gold case.
Priced from 11.000€
Also new in our shelves: If you need dongles only for a shorter period (eg. the week of a fair) consider renting them. Tell us your specific needs via firstname.lastname@example.org and we'll send you a quote.
Protektor provides dongle based copy protection for your vvvv projects. A dongle can be bought in addition to each active (less then a year old) full license. Volume discounts apply as follows:
Discounts are applied per customer, ie. dongles don't need to be bought in bulk.
Please order via email to email@example.com
here is the fifth in a series of blogposts about our forthcoming nextbigthing that we still call vvvv50 (50). If you haven't already done so please first read the previous issues with the titles:
Now please fasten your seat belt because this is a big one. Probably the single least asked for feature that could still become 50s unique selling point: Custom Datatypes.
There is a chance that for some of you it will now be enough to explain this in one sentence: In 50 a patch defines a datatype, horray! If that makes sense to you already, then cheers. There isn't much more to learn in this article.
Glad you're still reading. So you belong to the other group of people who are probably afraid that this may be the moment you're loosing it. It being your understanding of how it will be like to patch in the future? Fear not! "Custom Datatypes" only sounds abstract but is actually a very basic and intuitive concept. You'll understand and be happy to have them around soon, read on.
But before demonstrating how custom datatypes make our patchings easier with 50, lets first establish a problem in 45 to pave the road for the hype:
The demo scenario:
In good old modular fashion here is how you could approach this:
Step 1) A single particle
Step 2) Multiple particles
The framedelay together with an InsertSlice and a Select allow us to easily (well,..) add and remove slices dynamically.
So far so 45. See the fact that we needed 2 framedelays here? One for Position and one for Velocity? Oh you can zip those two parameters into one spread, of course. But next you blink the boss demands the particle to have a Color and a Name and you already need 3 framedelays... See where this is going?
The general problem here is that, as mentioned in 50: That Next Big Thing. An Overview., 45 does not really understand subpatches. For 45 everything is just one big patch and when you carefully modularize the Particle patch, 45 does not get any of this. So Position, Velocity and any other parameters are just laying there but 45 does not understand that they all describe properties of a particle and actually belong together.
This is where in 45 we'd advise you to create dynamic plugins to join/split your custom datatype. Thats fine for a start, only it requires you to code. Also there are three contributions that I won't go into detail here but are worth mentioning in that respect: Message by velcrome, VObject by microdee and VVVV.Struct by woei & tonfilm.
So while you see there are ways in 45 to tackle such (still rather simplified) situations, they are all workarounds to that aforementioned inherent problem of 45 not knowing about subpatches. And we need you to be really frustrated about that, not about a missing grid or close-button in the UI. This is where we need you to chant in unison: "Go release the cat, we can't work like that".
Well, here we go:
What you really want to express when putting multiple properties in one patch is to wrap up all those properties into one entity that you can operate with. Which is exactly what happens in 50.
So just to make sure we got our terms straight, a quick recap:
Value, String, Color, Transform,... are all primitive datatypes we're used to.
Now when we create our own datatype we can think of it as a compound of multiple primitive ones. So for example our Particle could be a compound of:
In other words: Those 4 properties (each of which has their own primitive datatype) together in a patch make our custom datatype called Particle. And of course this can be taken further. Think of a custom datatype called "Firework" that has a Spread<Particle> (meaning a spread of particles) and so on. So yes, datatypes can be compound and cascaded in any way. Apart from properties, datatypes also usually have one or more operations. Therefore the terms "patch" and "datatype" can be used synonymously.
To the point. We could of course exactly replicate Step 1) from above in 50 but we'll leave that up to your imagination and skip it here (as it would look exactly the same minus the framedelay). Instead we jump right into the definition of our custom datatype, which in its most simple form could look like this in 50:
Reading the patch:
In the (still rather rudimentary) listing on the left side you see that this patch has two properties called "Position" and "Velocity" and it has two operations called "create" and "update".
We've mentioned operations before, they are sections in a patch that can be independently executed. In 45 every patch has only one operation, therefore we never gave it a name, but think of it like "update" or "evaluate", ie. the operation that is called once every frame. In 50 a patch can have any amount of operations that can be executed any amount of times per frame (just dropping that here...more on it in a later posting).
So here the "create" operation is used to set initial values for a particles Position and Velocity properties. In further executions of "update" the velocity is always added to the position and the result is again stored in the "Position" property for the computation of the next frame. Also the result is being returned to the caller of the "update" operation as you can see via the little quad in the bar labeled "update".
Next: How do we create an instance?
ad step 1)
Lets again start with placing just a single particle in the patch:
By simply creating a "Particle" node in a patch, what actually happens in 50 is that we create a static instance of the type "Particle". Static meaning that it is instantiated when the program starts. The particle executes its "create" operation once and then repeats executing the "update" operation every frame until we delete the node or stop the program. We can of course create multiple Particle nodes next to each other and have multiple static instances.
Give it a velocity and it moves..done.
ad step 2)
The challenge now is to create multiple instances of Particles dynamically. But don't think 45 style SetPatch (VVVV), where you'd tell vvvv to actually create a Particle node and place it in a patch... no. This is where the 50 magic chimes in:
Instead of placing the "Particle" node as such in a patch we can also just call individual of its operations. Booom. In the patch below notice the "* Particle" node. This one is short for Particle.Create(), ie. calling the particles "create" operation to create and return a single instance. And then spot the double-decker ".update Particle" which is (not so short) for Particle.Update() that is called in the "For Each" region, ie. it is called once for each particle in the list.
Reading the patch:
When the left mouse button is pressed a new particle is added to the spread with the current mouse position as start position and a random velocity. Remember from the last posting about generics that the ".add Spread" is not specific to the particle! Then for each particle in the spread the update-operation is called so the particles move. Also for each particle a circle is created. The select node only takes particles that are still alive (ie. have an y < 500) and writes them back to the spread of particles. Finally all the circles are drawn in the renderer.
If you now once more compare the 45 and 50 approaches here is what you should note:
You still here?
yawnsmiley... let us digest this information for a while. I think it is enough for this time. Still more to come..
Appreciate what you just read? We appreciate a click: .
Here we go,
turns out it is quite a hassle to get 48 workshops run by 58 hosts in 5 days in 7 rooms under a single hat. You see the gorgeous result above and can get the .pdf here. Now it is on you to find your personal path of interest through the week and get your ticket. Full workshop descriptions and booking of individual seats will be available by next week!
Here is an alternative view on the workshops sorted by some vague categories:
You have no idea how much we are looking forward to this! Roughly 9 weeks time to prepare for the rush everyone. Back to coding...
For the Third Edition of GLOWFestival we decided to give an even bigger and more exciting edition of Festival also because 2015 was proclaimed by the UNESCO International Year of Light . And the GLOWFestival was recognized by the IYL (International Year of Light)! with the patronage and moral support! Many news this year about the use of light in artistic form in GLOWFestival, like:
° The video mapping Open call, with the choice of one of three locations;
° Mapping4kids Open Call! May participate kids of all ages. We ask them to to reinterpret the path of Locations that we will provide and to create an image based on it. Imagination is the limit! So if selected, they will see their drawing projected on one of the three locations of video mapping;
° 3D Official Gadget Festival Open Call, create the 3d model of gadget and see it printed in limited editions;
° outdoor installations open call with theme of light;
° BYOB (Bring Your Own Beamer Ostuni - in the historic center of Ostuni) The GLOWFestival offers you a chance to let everyone see what you can do with your projector and computer!
° Talks on Digital Media during the days of GLOWFestival;
anonymous user login