» it.Tutorial Spreads 2
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

it.Tutorial Spreads 2

English | French | Russian | Japanese | Korean | Mandarin

The original english version of this page is newer and may contain information this translation does not have! Click here to view the english version.

Il tutorial che segue prevede che tu abbia fatto pratica col tutorial 4: Un IOBox per ogni Situazione (it.Tutorial IOBoxes).

Richiamo

Ora che abbiamo imparato come trattare con gli IOBoxes, approfondiamo la conoscenza su come i nodi si relazionino con gli spreads.

I due esempi ti danno un idea di cosa succeda dentro un nodo se ha a che fare con spreads con differenti SliceCounts.

Un nodo calcola innanzitutto gli SliceCounts di tutti gli spreads che riceve. Poi lo SliceCount maggiore in input viene usato per per lo SliceCount in output. Quindi il minore viene ridimensionato su quello maggiore: per fare questo le slices esistenti vengono ripetute.

Forse questo ti ha confuso, invece che chiarirti le idee, ma spesso spiegare cose semplici può essere difficile. Se sei arrivato/a fin qui, è probabile che tu abbia compreso a grandi linee la logica che sta dietro vvvv, ed il prossimo esempio ti aiuterà ulteriormente.

Gestire senza fatica Istanze Multiple

Supponiamo di avere un nodo RoundRect (GDI) propagato, (spreaded), linearmente lungo l'asse X e che tu voglia che il primo quadrato sia verde ed il secondo rosso.

Cosa faresti se avessi una griglia 5X5 di rettangoli? Forse connetteresti il nodo LinearSpread (Spreads) allo Y input del nodo RoundRect (GDI). Ma ecco cosa otterresti:

Il nodo RoundRect (GDI) si disegna per sole 5 volte, perché lo SliceCount maggiore è pari a 5. La prima coordinata X e la stessa della prima coordinata Y, e così per le altre coppie di coordinate X/Y, risultando in un ordine ascendente.

Naturalmente vvvv dispone di un nodo che ti consente di generare coordinate utili alla costruzione di una struttura a forma di griglia. Prova il nodo Cross (2D) come mostrato qui sotto.

Il nodo Cross (2D) produce in output 25 slices per la X e la Y, coprendo così ogni possibile combinazione delle input slices. Nota come sia possibile aggiustare la distanza tra i rettangoli attraverso il secondo input pin del nodo LinearSpread (Spreads).

Per ultimo aggiungiamo ancora un po' d'interazione. Diciamo che vogliamo conoscere la distanza che c'è tra ciascun rettangolo ed il cursore del mouse. Il nodo all'uopo è Points2Vector (2D) che restituisce la distanza tra due punti. Connetti il nodo come mostrato sotto ed indovina cosa significano quei 25 numeri nello IOBox in basso a destra.

Giusto, il nodo Points2Vector (2D) è così gentile da restituire le 25 distanze di ciascun punto della griglia dalle coordinate del punto in cui si trova il cursore. Adesso mappa queste distanza su una ragionevole lunghezza così che possano essere usate come dimensioni per il nodo RoundRect (GDI). Multimediale, no?

Ora regola lo SpreadCount del nodo LinearSpread (Spreads): non importa quanti rettangoli tu voglia gestire, la patch rimane semplice come la prima che hai costruito.

Ci sono ancora altre cose da imparare sugli spreads, ma per ora basta così. Ogni volta che avrai l'impressione che ti sfugga qualcosa, consulta le sezione del manuale sugli Spreads per ulteriori dettagli.

anonymous user login

Shoutbox

~2h ago

kamome: hei is there any way to record gamma patch / renderer with ffmpeg ?

~1d ago

vasilis: Hi @Joreg..I'm interested in "Getting started with vvvv gamma"

~2d ago

joreg: @vasilis we'll add more. which one are you interested in?

~2d ago

vasilis: missed my chance again...sold out!!!

~2d ago

Takuma: @joreg thanks for sharing!!

~4d ago

~5d ago

joreg: Everyone go checkout this growing list of #vvvv beta tutorials by Takuma Nakata: https://www.youtube.com/playlist?list=PLK3HDkvkLePS9UKCVw1o_eb09Ocws6Wcr Thanks for those!

~6d ago

evvvvil: "Energy Confinement": Result of Tuesday's improvised live coding session on Twitch. https://www.shadertoy.com/view/WslyDl