» it.Patching: nozioni di base
This site relies heavily on Javascript. You should enable it if you want the full experience. Learn more.

it.Patching: nozioni di base

English | Korean | French

Patching pages

Introduzione

La programmazione con vvvv viene comunemente definita patching.
La canvas dell'editor viene chiamata Patch.
I blocchi costituitivi che compongono le tue patch sono chiamati Nodi.
I nodi hanno parametri di input e output chiamati Pin che possono essere collegati tramite dei Link.

La seguente guida descrive in dettaglio questi 4 componenti principali.

Patch

Aprire una patch

Per aprire una patch, fai click con il pulsante centrale nel Patch Editor per aprire il menu principale e scegli:

  • Open (CTRL+O)
  • Open in Patch (CTRL+SHIFT+O)

Salvare una patch

Per salvare una patch, fai click con il pulsante centrale nel Patch Editor per aprire il menu principale e scegli:

  • Save (CTRL+S)
  • Save As... (CTRL+MAIUSC+S)

Ogni volta che si salva una patch, viene eseguito il backup della versione precedente con lo stesso nome del file ma terminante con ~.xml. Quindi, se mai avessi bisogno di tornare alla versione precedente, rinominalo in .v4p e così potrai riaprirlo.

Usando il mouse

Quando crei una patch, ricorda sempre che:

  • La modifica della posizione di un nodo o di una finestra può essere eseguita in modo intuitivo facendo drag col tasto sinistro del mouse
  • Se vuoi cambiare qualsiasi valore di un pin (o in uno IOBox) puoi farlo con un drag col tasto destro del mouse
  • Puoi sempre emulare un click del tasto centrale del mouse premendo SPAZIO ed utilizzando il tasto destro del mouse nel caso in cui tu non abbia un pulsante centrale del mouse

Nascondere o Chiudere una patch

  • Se Chiudi una patch (CTRL + W), la patch verrà rimossa dal sistema. Il nodo contenente la patch viene eliminato.
  • Se Nascondi una patch (ALT +3), la patch farà comunque parte del sistema e continuerà a funzionare. Solo non sarà più visibile.

Vedi anche: Window Modes.

Bloccare una patch

Per bloccare una patch premi CTRL + E. Una patch bloccata mostra il simbolo '#' nell'angolo in alto a sinistra.

In una patch bloccata:

  • tutti i nodi continuano a funzionare
  • è ancora possibile modificare i valori degli IOBox visibili
  • i nodi non possono più essere spostati
  • i nodi nascosti ed i link sono invisibili

Per sbloccare una patch, utilizzare nuovamente CTRL + E.

Scrolling

È possibile scrollare all'interno di una patch facendo click con il tasto destro su uno spazio vuoto e fare dragging__ col mouse.

In alternativa o durante la creazione di un link puoi:

  • utilizzare la rotellina del mouse per scrollare verticalmente
  • premere ALT mentre si utilizza la ruota per scrollare orizzontalmente
  • premere CTRL per velocizzare lo scrolling

Commenti

Fare doppio click con il tasto sinistro per visualizzare il Node Browser. Quindi inserisci il testo che vuoi avere come commento nella patch. Assicurati che il testo inserito non corrisponda a nessun nodo prima di premere INVIO per creare un commento.

Un commento è essenzialmente un (IOBox (String) con i suoi pin di input e output nascosti. Quindi puoi sempre fare doppio click per cambiarlo.

Creare un Modulo

Se vuoi trasformare una patch in un modulo riutilizzabile, consulta:

Nodo

I nodi sono gli elementi costituitivi delle tue patch ed ogni nodo rappresenta una funzionalità specifica. Un identificatore di nodi è strutturato in questa forma:

 Nome (Categoria Versione)

La combinazione di nome, categoria e versione è unica per ciascun nodo in vvvv. Le versioni sono opzionali e possono essere un numero qualsiasi di stringhe separate da spazi.

In una patch vedi sempre solo il nome dei nodi. Passa con il mouse su un nodo per visualizzarne l'identificatore completo nel tooltip

Icone

I nodi possono avere diverse icone:

  • ha nodi vvvv
  • ha nodi VL
  • ha codice (editor di codice hlsl o c #)
  • ha un renderer / finestra

Ogni nodo con un'icona può essere cliccato con il tasto destro per mostrare il suo editor o la sua finestra. I nodi senza icona sono nodi nativi e non possono essere manipolati.

Per avere una panoramica di tutti i pin di un nodo, selezionalo e premi CTRL + I per aprire l' Inspektor.

Per saperne di più sulla funzionalità di un nodo, selezionalo e premi F1 per aprirne il glossario: helppatch?.

Aggiungere nodi ad una patch

È possibile sfogliare l'elenco dei nodi disponibili facendo doppio click su un punto qualsiasi in una patch per visualizzare il Node Browser.

Lì puoi iniziare a digitare tag (separati da spazio) per cercare un nodo con funzionalità specifiche oppure puoi accedere a una vista ordinata per categoria facendo click con il tasto destro del mouse nell'area di testo.

Quando hai trovato un nodo che vuoi usare nella tua patch, premi invio o selezionalo con un click sinistro e verrà inserito nella patch.

Eliminare nodi

Seleziona un nodo e premi i tasti Elimina o BackSpace per rimuoverlo dalla patch.

Spostare una selezione di nodi

Premi i tasti cursore per spostarli di 1px.
Premi MAIUSC e i tasti cursore per spostarli di 10px.

Raggruppare nodi

Seleziona un gruppo di nodi e premi CTRL + G per sostituirli con una subpatch della stessa funzionalità e mantenendo le loro connessioni con altri nodi.

Nota che la subpatch creata non viene salvata automaticamente. Pertanto è buona norma fare click con il tasto destro del mouse sul nuovo nodo e premere CTRL + MAIUSC + S per salvarlo con un nome specifico.

Nascondere i nodi

Premi CTRL + H per contrassegnare una selezione di nodi / collegamenti come nascosti.

I Nodi e/o i Link nascosti non sono più visibili o accessibili quando una patch è bloccata. In una patch sbloccata si distingueranno per una tonalità più chiara di grigio.

Colori dei nodi

  • Rosso: il nodo ha un problema, vedi Nodi rossi
  • Rosa: uguale al rosso, solo che il nodo è anche contrassegnato come nascosto
  • Blu: il nodo è boygrouped
  • Azzurro: uguale al blu, solo che il nodo è anche contrassegnato come nascosto
  • Azzurro e bordo grigio: la subpatch contiene dei nodi Boygrouped

Altro

  • Puoi allineare una selezione di nodi premendo CTRL + L
  • Per ripristinare tutti gli input di un nodo sui loro valori predefiniti: ALT + tasto destro del mouse sul nodo

Pin

Un nodo può avere un numero qualsiasi di ingressi e uscite, sia nella sua parte superiore che in quella inferiore, chiamati pin.

  • Inputs sono i punti in cui si specificano i parametri che alimentano la funzionalità del nodo
  • Output sono i risultati della funzione implementata dal nodo
  • I pin di configurazione sono visibili solo tramite l'Inspektor e sono usati per definire i parametri di un nodo che non dovrebbero cambiare in fase di esecuzione.

Tipi di dati

Ad ogni pin in vvvv è associato uno specifico tipo di dati.
I tipi di dati più comuni sono:

Primitive

  • Value (valori numerici: booleani, interi o in virgola mobile)
  • String (testo)
  • Color
  • Enumeration (lista ordinata di elementi)

Non-Primitive

  • Node (nome collettivo per tutti gli altri tipi di dati, come: Texture, Transformation, Mesh,...)

Puoi introdurre i tuoi tipi di dati personalizzati usando i plugins.

Sottotipi

Tutti i tipi di dati primitivi possono avere dei sottotipi che specificano più precisamente un intervallo di valori che un pin può avere. Esempi

  • un sottotipo numerico specifica: numero intero (integer) nell'intervallo da 1 a 10
  • un sottotipo di testo può specificare: un nome di un file

I sottotipi vengono utilizzati solo per l'interfaccia utente in modo da offrire una modalità più adatta per l'immissione dei dati in un pin, ma non influenzano il calcolo e/o la logica implementata da un nodo.

Ispezione del valore di un pin

Sposta il mouse su qualsiasi pin per vedere un tooltip che mostra il nome e il valore corrente.

Modifica del valore di un pin

I valori degli input che hanno uno dei tipi di dati primitivi possono essere modificati direttamente sul pin. Modificare il valore di un pin è come modificare un IOBox:

  • Value pins: fare right-drag sul pin verticalmente per cambiarne il valore. Vedi Valori degli IBOxes.
  • Color pins: fare right-drag sul pin per cambiarne il colore Vedi Color IOBoxes.
  • String pins: fai click con il pulsante destro del mouse per richiamare l'operazione in base al sottotipo. Vedi String IOBoxes.
  • Enumeration pins: fare click con il pulsante destro del mouse per richiamare il menu a discesa con tutti i valori possibili. Vedi Enumeration IOBoxes.

Reimpostazione del valore di un pin

  • Alt + click con il pulsante destro del mouse su un pin non collegato per ripristinarlo ai valori predefiniti.
  • Alt + click con il pulsante destro del mouse su un nodo per ripristinare i valori predefiniti di tutti i pin non collegati.

Link

Connettere i pin

Due pin con lo stesso tipo di dati possono essere collegati tramite un collegamento (link).

  1. Fai un click col pulsante sinistro del mouse su uno dei pin che vuoi connettere (input o output)
  2. Vedrai un link che segue il cursore del mouse. Tutti i pin a cui ora puoi connetterti diventeranno dei quadrati grigi più grandi (Nota: i pin nascosti non verranno visualizzati ma possono comunque essere collegati).
  3. Fai un click col pulsante sinistro del mouse sul secondo pin. Il tuo link è stato creato.
  • Per annullare un collegamento durante la creazione, è sufficiente fare click con il tasto destro.
Ogni pin di input può avere solo un link!
Pertanto, quando si tenta di aggiungere un altro link ad un input che ha già un collegamento, il link esistente verrà sostituito dal nuovo link.

Le uscite possono avere qualsiasi numero di collegamenti in uscita. Tranne nei rari output pin Video, Audio e Midi dei nodi nella categoria DShow9 che possono anche gestire un solo link!

Per creare più collegamenti che partono dallo stesso pin di output, inizia con un click destro sul pin stesso, quindi fai semplicemente click con il pulsante sinistro del mouse su tutti i pin di input a cui desideri connetterti.

Durante la creazione di un collegamento è possibile fare click con il pulsante centrale del mouse, in qualunque punto dell'editor della patch, per creare un IOBox che conterrà i dati del pin di provenienza. Fai click col tasto centrale su IOBox ancora una volta per dargli automaticamente il nome del tuo pin. See also: Descriptive Name.

Feedback Loops

Creare un loop non è una connessione valida!
Se hai davvero bisogno di farlo, cerca di capire meglio cosa stai facendo.

Per i dettagli, consulta Creating Feedback Loops.

Link segmentati

Durante la creazione di un collegamento, basta fare click occasionali col tasto sinistro del mouse. Per ogni click, viene aggiunto un punto di ancoraggio. Se in seguito desideri modificare la forma di un collegamento, selezionalo e trascina i quadratini blu. Per rimuovere i punti di ancoraggio, allineali in linea retta.

Stile dei link

Esistono 3 stili diversi per i collegamenti:

  • Dritto
  • Bezier
  • Verticale-Orizzontale-Verticale

Premi CTRL + Y su un collegamento selezionato per scorrere fra gli stili.

Rimozione di link

Per rimuovere un collegamento esistente, prima selezionalo (click con il tasto sinistro) e poi fai click con il tasto destro su di esso. (o premendo il tasto BackSpace o Canc).

Nota che quando si rimuove un collegamento, i pin con un tipo di dati primitivo si comportano in modo diverso dai pin del nodo:

  • Tipi di dati primitivi: conservano il loro valore quando vengono disconnessi
  • Pin del nodo: non conservano il loro valore quando vengono disconnessi. Invece tornano ai loro valori predefiniti

anonymous user login

Shoutbox

~7h ago

joreg: vvvvTv S02E01 is out: Buttons & Sliders with Dear ImGui: https://www.youtube.com/live/PuuTilbqd9w

~7d ago

joreg: vvvvTv S02E00 is out: Sensors & Servos with Arduino: https://visualprogramming.net/blog/2024/vvvvtv-is-back-with-season-2/

~7d ago

fleg: hey there! What's the best tool for remote work? Teamviewer feels terrible. Thanks!

~21d ago

joreg: Last call: 6-session vvvv beginner course starting November 4: https://thenodeinstitute.org/courses/ws24-5-vvvv-beginners-part-i/

~1mth ago

joreg: Missed the last meetup? You can rewatch it here: https://www.youtube.com/live/MdvTa58uxB0?si=Fwi-9hHoCmo794Ag

~1mth ago

theurbankind: When is the next big event, like node festival ?

~1mth ago

~1mth ago

joreg: Join us for the next vvvv meetup on Oktober 17th: https://visualprogramming.net/blog/2024/25.-vvvv-worldwide-meetup/

~1mth ago

joreg: 6 session beginner course part 2 "Deep Dive" starts January 13th: https://thenodeinstitute.org/courses/ws24-5-vvvv-beginners-part-ii/