» Basic Programming Concepts
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

Basic Programming Concepts

Italian

You are familiar with textual programming and are missing some of the basic concepts of your mother tongue in vvvv. Here is collection of common programming concepts and some hints to where you can find them in vvvv.

Loops, Iterations

Basically vvvv avoids the concept of sequential loops. You basically calculate all iterations at the same time by using a spreaded calculation, which does all calculations in the same frame. Look for the spread nodes especially I, Integral, Differential, Cross, Resample, Shift and the various spectral nodes are key for implementing many common scenarios for using loops.

If you are really looking for a way to generate a loop like you would do with: for, do while, repeat until you can of course iterate variables in successive frames, but this takes time.
have a look at the HelpPatches of the following nodes:
Counter (Animation) or FrameCounter (Animation) will help you to simulate the famous iterating variable i.

Also FrameDelay (Animation) and FrameDelay (String) will be needed when it comes to looping. See Creating Feedback Loops

Conditions

= (Value) or = (String) may help you define a condition to stop the loop. The members of the Boolean? category will help you to combine several conditions to break a loop like you used to do with and, &&, or, ||, not, !. If you need a timebased stop condition have a look at MonoFlop (Animation).

Change (Animation)
Switch (Value Input)

  • if then else
  • switch, case

State Automatas

When patching anything that can be separated into a series of states and events that cause transition from one state to another you are likely looking for Automata (Animation).

Procedures, Functions

Subpatches and Modules is what you are looking for.

Classes, Objects, Instances, Methods,

There is no concept of Objects or Classes in vvvv. Next best concept is again Subpatches and Modules .

Variables

IOBoxes, Send/Receive, FrameDelay

Arrays, Lists

Spreads

Data structures

Queue (Spreads), RingBuffer (Spreads)

nil, null

see Empty Spreads

anonymous user login

Shoutbox

~6h ago

Jackal: works with the Xbox one also.

~7h ago

Urbankind: is Kinect V 1.5 is exclusive for Kinect PC or all the new features works with old kinect?

~8h ago

sapo: kinect 1.5 works with 27.2 vux nodes!

~11h ago

microdee: vvvv_45alpha28-develop-697babe... horny version number is horny:D

~11h ago

newsheng: @milo:thank you!

~19h ago

Jackal: Agree With @mediadog (:

~21h ago

mediadog: @elliotwoods re: ps3eye: You are a scholar and a gentleman!

~1d ago

milo: @newsheng: it´s not published until now. as far as i know...