Documentazione del Programma Cinema 4D/BodyPaint 3D Riferimento Cinema 4D Cinema 4D Prime XPresso
Funzione disponibile in CINEMA 4D Prime, Visualize, Broadcast, Studio & BodyPaint 3D

Editor XPresso

Menu
Menu Contestuali XPresso
Gestione XPresso
Il Pool XPresso

Per creare una nuova espressione ed aprire l’editor di XPresso, selezionate qualsiasi oggetto nella Gestione Oggetti e scegliete Tag / Tag Cinema 4D / XPresso. Potete chiudere l’editor in qualsiasi momento e riaprilo cliccando due volte sul tag Espressione XPresso.F

I nodi sono i "mattoni” delle vostre espressioni con XPresso. I nodi possono assolvere a una varietà di compiti, dal restituire il numero del frame attuale dell’animazione a settare un oggetto in una particolare posizione. Per costruire le vostre espressioni, potete creare i nodi necessari e collegarli l’uno all’altro disegnando delle linee, chiamate connessioni, fra le porte input e output di un nodo. I nodi sono quindi in grado di passarsi valori attraverso tramite porte e wire.

La figura precedente mostra due nodi, uno per un Cubo ed uno per un Cilindro. I due cerchi, entrambi chiamati Rotazione, sono delle porte. Le porte sotto al quadrato rosso sono porte di output e mandano questi valori agli XGruppi o ad altri nodi. Le porte sotto al quadrato blu sono porte input e ricevono valori da altri nodi o da XGruppi. In questo esempio, il valore della rotazione del cubo viene inoltrato al cilindro. Questo porterà il cilindro a puntare sempre nella direzione del cubo nella vista.

Per imparare XPresso il più velocemente possibile, vi raccomandiamo di seguire i tutorial di Cinema 4D e, qualora qualcosa non fosse chiaro, di dare un’occhiata a questi riferimenti per una descrizione completa. In più, troverete una varietà di esempi ed espressioni nel cd di Cinema 4D, ciascuno documentato e commentato. Si può apprendere molto da questi esempi leggendo i commenti e provando ad apportare cambiamenti.

XGruppi

Gli XGruppi sono dei contenitori per nodi, altri XGruppi o le loro connessioni. Come dei veri e propri contenitori, XGruppi vi aiutano a mettere elementi correlati nello stesso contenitore per un’organizzazione più efficace. In questo modo troverete molto più semplice capire, navigare e modificare un’espressione. Oltre a fare da contenitore, un XGruppo può essere collegato ad altri nodi o ad altri XGruppi. Potete salvare e caricare XGruppi per riutilizzarli in altri progetti.

Usate XGruppi per riordinare i nodi in gruppi.

Potete navigare nei contenuti di un XGruppo in maniera del tutto simile a quella delle viste di Cinema 4D. Per muovere o zoomare sui contenuti, trascinate l’icona Muovi o Zoom nell’angolo in alto a destra dell’XGruppo. Potete anche spostare il contenuto premendo i tasti cursore. Per aggiungere porte ad un XGruppo, selezionate le porte desiderate dal menu input dell’XGruppo (il quadrato blu) e dal menu output (il quadrato rosso).

Per ridurre un XGruppo visualizzando solo la sua barra del titolo, cliccate due volte su di essa. Per ripristinare un XGruppo alla sua grandezza normale, cliccate di nuovo sulla barra del titolo. Per spostare un XGruppo, trascinate la sua barra del titolo. Per ridimensionare a piacimento la finestra di un XGruppo, trascinate uno degli angoli o un lato della finestra.

Quando create le vostre espressioni, avrete spesso bisogno di selezionare un XGruppo e, fra le altre cose, caricare i suoi settaggi all’interno della gestione Attributi in modo da poterli modificare. Per selezionare un XGruppo, cliccate sulla sua barra del titolo. Per selezionare più XGruppi, create un rettangolo di selezione fra di loro, o selezionatene uno e, tenendo premuto il tasto Shift, aggiungete gli altri XGruppi cliccandoli. Gli XGruppi selezionati appariranno con i bordi arancioni.

Inserisci per primo

Nella pagina Proprietà Nodo in gestione Attributi, troverete un’opzione chiamata Inserisci per primo. Se questa è abilitata, i nodi che sono al di fuori dell’XGruppo selezionato vengono valutati per primi. Questo si rivela utile soprattutto quando l’XGruppo riceve valori dai nodi, per assicurarsi che l’XGruppo riceva valori aggiornati.

Attivo

Questa opzione consente di attivare o disattivare l’XGruppo. I nodi all’interno dell’XGruppo verranno processati solo se l’XGruppo è attivo. Potete attivare il nodo anche passando un valore Bool di Vero o il valore 1 alla sua porta Abilita.

Protezione / No Protezione

Potete proteggere gli XGruppi con una password usando questo pulsante, il quale nasconderà i contenuti dell’XGruppo finché non verrà inserita la password.

Per proteggere un XGruppo, scegliete Vista / Bloccato per bloccare i contenuti dell’XGruppo. In gestione Attributi, cliccate sul pulsante Proteggi. Nel dialogo che si apre inserite la vostra password per l’XGruppo. L’XGruppo sarà quindi protetto da una password.

Per togliere la protezione da un XGruppo, fate lo stesso al contrario. Cliccate sul pulsante No Protezione e inserite la vostra password nel dialogo che si apre. Per rivelare i contenuti dell’XGruppo, disattivate Vista / Bloccato dal menu contestuale e scegliete la modalità di visualizzazione desiderata dal sottomenu Vista.

Nodi

I nodi di Cinema 4D lavorano in radianti. In altre parole, i nodi usano valori angolari da 0 a 2*Pi piuttosto che gradi da 0 a 360˚. Se volete lavorare in gradi, usate il nodo Grado per convertire da radianti a gradi, e viceversa.

I nodi sono gli elementi fondamentali delle espressioni e sono progettati per assolvere ai compiti più diversi, dal restituire la posizione attuale di un oggetto ad eseguire complesse operazioni matematiche. In base al tipo di nodo, potete aggiungere diversi input e output chiamati "porte”. Come per gli XGruppi, potete aggiungere queste porte usando i menu input e output (i quadrati blu e rossi nella barra del titolo di un nodo).

Quattro nodi. Il nodo Risultato mostra il valore 1 se il cono e il cubo sono alla stessa altezza (valore Y).

Potete contrarre minimizzare o massimizzare un nodo cliccando due volte sulla sua barra del titolo; per spostare un nodo, trascinate la barra del titolo; per ridimensionare un nodo, trascinate un lato o un angolo. Cliccate su un nodo per selezionarlo e caricarne i parametri in gestione Attributi. Per selezionare nodi multipli, create una selezione attorno ad essi o selezionate uno dei nodi e quindi premendo il tasto Shift cliccate su ciascun altro nodo che volete selezionare; i nodi selezionati hanno i bordi arancioni.

Potete abilitare o disabilitare i nodi attraverso l’opzione Abilita in gestione Attributi o tramite l’opzione Disabilita dal menu contestuale del nodo, che è descritto più avanti in questo capitolo.

Per rinominare un nodo, selezionate il nodo ed inserite il suo nuovo nome nella pagina Proprietà Base della gestione Attributi. Il nome predefinito di un nodo indica il suo tipo. Se rinominate un nodo, potete controllarne il tipo in gestione Attributi. Potete anche impostare il tipo di dati del nodo in gestione Attributi; questo definisce che tipo di dati gestisce il nodo, ad esempio numeri interi o stringhe di caratteri.

Potete riassegnare un nodo Oggetto, Materiale o Tag ad un oggetto, materiale o tag diverso. Basta trascinare l’oggetto, materiale o tag nella parte interna del nodo (solitamente nell’area dove compaiono i nomi delle porte). Verranno mantenute le porte originali se sono ancora adatte per il nuovo oggetto, materiale o tag. Le porte che non possono essere preservate verranno settate allo stato indefinito.

Ciascun nodo XPresso verrà descritto più avanti nel corso di questo capitolo.

Porte

Le porte sono input e output per i nodi e gli XGruppi. Per aggiungere una porta, selezionate la porta desiderata dal menu input (quadrato blu) o dal menu output (quadrato rosso); in questi menu, le porte che sono già state aggiunte vengono oscurate.

Aggiungete le porte utilizzando i menu input e output (i quadrati blu e rossi negli angoli in alto del nodo).
I valori vengono passati attraverso le porte. Le porte output si trovano sotto i quadrati rossi, mentre le porte input si trovano sotto i quadrati blu.

Le porte rosse sono porte di output e mandano valori agli XGruppi o ad altri nodi. Le porte blu sono porte di input e ricevono valori da altri nodi o XGruppi. Per collegare una porta di output ad una di input, eseguite il drag and drop del cerchio di una porta sull’altra. Un collegamento apparirà tra le porte, come mostrato sotto.

Per collegare le porte, trascinate una porta sull’altra.

Nel menu contestuale di una porta sono disponibili diversi comandi che sono specifici per le porte.

Se un nodo o un XGruppo viene selezionato e ha porte non collegate, queste vengono mostrate nella pagina Parametri della gestione Attributi (non si applica ai nodi Oggetto); potete mandare valori a queste porte inserendo i valori in questa pagina. Questo è utile soprattutto per testare dei nodi con valori particolari. Gestione Attributi permette inoltre di mandare i vostri dati ai nodi (vedere "Dati Utente” sotto).

Per vedere il nome di una porta, spostate il puntatore del mouse sulla porta e il suo nome apparirà nella barra di stato dell’editor XPresso (per visualizzare la barra stato, abilitate l’opzione Mostra Barra Stato nel menu Interfaccia dell’editor XPresso). Se volete che vengano mostrati i nomi delle porte, abilitate l’opzione Porte / Mostra Nomi nel menu contestuale.

Per disconnettere una porta cliccate due volte su di essa. Se la porta è già disconnessa, facendo doppio clic verrà cancellata. Per cambiare l’ordine verticale di una porta, premete il tasto Alt e spostatela in una nuova posizione.

Le Porte definite per i parametri elemento possono anche essere contrassegnate nella Gestione Attributi:

Dati Utente

Le porte Dati Utente vi permettono di mandare i vostri valori ai nodi attraverso la gestione Attributi.

Per creare una porta Dati Utente

Connessioni

I collegamenti vi permettono di collegare le porte dei nodi e degli XGruppi.

Per fare in modo che i nodi e gli XGruppi si passino dei valori tra di loro, dovete prima creare le porte necessarie e quindi collegarle utilizzando le connessioni. Per creare una connessione tra due porte, trascinate il cerchio di una delle porte e rilasciatelo sull’altra. Mentre trascinate appare una linea che si attacca alla seconda porta quando il puntatore del mouse gli è vicino.

Alcune connessioni non sono permesse. Ad esempio, non potete collegare una porta input ad un’altra porta input e nemmeno due porte i cui tipi di dati sono incompatibili. Mentre disegnate il collegamento, il suo colore cambia per indicare se il collegamento è permesso (verde) o no (verde scuro). Se una connessione non è permessa, il collegamento sarà cancellato appena rilasciate il pulsante del mouse.

Una porta output potrebbe essere connesa a più porte input, quindi permettendovi di passare lo stesso valore a diversi nodi o XGruppi. Tuttavia, una porta input può avere solo una connessione.

Per connettere una porta di output alla porta di input dello stesso nodo, copiate il nodo (tenete premuto il tasto Ctrl e trascinate facendo una copia) e connettete la porta di output del primo nodo alla porta di input del secondo nodo.

Se per sbaglio create una connessione ad una porta sbagliata, potete correggerlo trascinando il collegamento sulla porta corretta. Se rilasciate il collegamento in uno spazio vuoto (non su una porta), la connessione sarà cancellata appena rilasciate il pulsante del mouse. Potete anche cancellare le connessioni selezionando Rimuovi Collegamenti dal menu contestuale della porta.

Se i collegamenti in una espressione sono disordinati, riposizionate le porte premendo il tasto Alt e trascinando ciascuna porta in una nuova posizione. Potete riposizionare solo verticalmente. Non potete, ad esempio, premere il tasto Alt e trascinare una porta di input dalla sinistra alla destra di un nodo.

Le connessioni convertiranno tipi di dati compatibili automaticamente. Ad esempio, se passate un valore reale, come ad esempio 72.163, ad un nodo che funziona solo con numeri interi, il collegamento convertirà automaticamente il valore reale in valore intero, in questo caso 72.

Tipi di Dati

Ciascun nodo e XGruppo ha un tipo di dati che definisce il tipo dei valori che usa, come ad esempio Integro, Vettore, Colore. Se collegate due nodi che usano tipi di dati differenti, il collegamento tra i nodi converte automaticamente i tipi di dati se questi sono compatibili. Ad esempio, se un nodo Costante passa un valore Reale di 3.45 ad un nodo Risultato il cui tipo di dati è impostato su Integro, il valore verrà convertito ad un intero automaticamente - in questo caso 3.

Nonostante alcuni nodi abbiano un tipo di dati prefissato che non può essere cambiato, potete cambiare il tipo di dati di molti nodi in gestione Attributi.

Colore

Questo tipo di dati consiste nei componenti di colore rosso, verde e blu. I valori RGB possono anche essere interpretati come un vettore; così, il colore R:10, G:75, B:0 sarebbe equivalente al vettore (10;75;0). Questo vi permette, ad esempio, di utilizzare un colore per controllare la posizione di un oggetto o un vettore rotazione.

Link

Il tipo di dati Link contiene informazioni sui vari elementi in una scena di Cinema 4D, incluse informazioni sui tag e i materiali così come gli oggetti. Il tipo Link non può essere convertito in altro tipo di dati. Lo scopo del tipo di dati Link è di permettere la selezione di un elemento della scena (come ad esempio un oggetto, un materiale o un tag) per esaminarlo più da vicino. Ad esempio, potete utilizzare il tipo di dati Link per aggiungere un box di dati utente in gestione Attributi. Potete anche assegnare materiali, tag e oggetti con il drag-and-drop nel box. Vedete anche Oggetto più avanti.

Nome File

Questo tipo di dati consente di registrare un percorso file. Per esempio, il nodo Suono usa il tipo di dati Nome File per registrare il percorso del file sonoro che volete caricare.

Texture

Questo elemento contiene un riferimento ad una texture, cioè ad un file immagine o uno shader. Questo tipo di dati è utile solo se usato con i materiali, come ad esempio all’interno di un canale materiale.

Alone Lente

Questo tipo di dati contiene un set di dati, in questo caso tutte le informazioni necessare per controllare l’alone lente di una sorgente di luce. Non può essere convertito in altri tipi di dati.

Bool

Il tipo di dati Bool ha due possibili stati: Vero e Falso. Questi stati sono rappresentati dai valori numerici 1 (Vero) e 0 (Falso). Nonostante possiate utilizzare valori Bool nei calcoli matematici, ricordate che questo tipo di dati è in grado di contenere solo un valore di 0 o 1. Quando volete combinare diversi valori Bool, utilizzate i nodi Logic.

Intero

Questo tipo di dati supporta tutti i numeri interi (non frazionali) che possono essere negativi, zero o positivi. I numeri dopo il punto decimale vengono ignorati; questo può portare a risultati inaccurati se sono coinvolte le frazioni. Potete utilizzare il tipo di dati Intero con tutti i formati vettoriali e numerici.

Quando convertite un vettore in un intero o in un reale, la lunghezza del vettore viene calcolata automaticamente con la formula SQRT(V.x*V.x+V.y*V.y+V.z*V.z), dove V.x, V.y e V.z sono i componenti X, Y e Z del vettore e SQRT è la radice quadrata della funzione. Invece, quando un intero o un reale viene convertito in un vettore, il valore viene usato per i componenti X, Y e Z del vettore. Ad esempio, il numero reale 12.5 viene convertito nel vettore (12.5;12.5;12.5).

Reale

A differenza degli Interi, i Reali possono essere anche frazionali. Un esempio tipico di un reale è Pi, ossia 3,141592654. Usate il tipo Reale quando sono coinvolti calcoli complessi e volete un risultato preciso. I reali possono essere convertiti in vettori o interi. Quando un reale viene convertito in un intero, i numeri dopo la virgola vengono ignorati (cioè vengono arrotondati quando sono convertiti in interi).

Vettore

Il tipo dati Vettore è importante per manipolare le posizioni e le rotazioni nello spazio 3D. Le posizioni, gli angoli HPB, i colori e le coordinate punti di un oggetto vengono tutte immagazzinate come vettori. I valori vengono conservati nel vettore uno ad uno. Ad esempio, le posizioni vengono immagazzinate nell’ordine (posizione X; posizione Y; posizione Z) e le rotazioni nell’ordine (angolo H; angolo P; angolo B). In Cinema 4D, un vettore ha sempre tre componenti. Se convertite un vettore in un intero, viene convertita la lunghezza del vettore piuttosto che i componenti individuali. Potete anche usare i vettori con le matrici.

Normale

Un vettore normalizzato è un vettore della stessa direzione, ma con la lunghezza di 1.

Matrice

Una matrice è un gruppo di vettori, come ad esempio la matrice globale di un oggetto, che contiene il vettori di posizione dell’oggetto e tre vettori per ciascun asse dell’oggetto. I vettori asse rappresentano non solo la direzione dell’oggetto, ma anche la scala (la scala è definita dalla lunghezza di ciascun vettore asse). Perciò la matrice globale dà accesso alla posizione, alla scala e alla rotazione dell’oggetto.

I quattro vettori vengono immagazzinati nei seguenti registri della matrice globale: V0 per il vettore posizione (chiamato vettore Offset); V1 (asse X); V2 (asse Y); V3 (asse Z). Utilizzando questi registri, potete leggere o sostituire qualsiasi vettore, come ad esempio V2 per l’asse Y dell’oggetto

Tempo

Il tipo dati Tempo dà accesso al tempo corrente dell’animazione. Ricordate che il valore è influenzato dal frame rate. Ad esempio, se il frame rate è 25 fotogrammi al secondo, il valore Tempo per il fotogramma 24 è un secondo esatto. Il tipo dati Tempo è utile per controllare processi dinamici dato che vi permette di tener conto del progresso di un’animazione. Ad esempio, potete far rimbalzare una palla una volta al secondo o fare in modo che un oggetto segua un altro in un periodo particolare di tempo. Vedere anche Data/Tempo sopra.

Stringa

Il tipo dati Stringa è per i caratteri e per le stringhe di testo. Una stringa può contenere lettere, numeri e caratteri speciali. Ad esempio, potete usare il tipo dati Stringa per fare in modo che l’utente inserisca un nome in un box di testo. Inoltre, i collegamenti di XPresso permettono automaticamente di convertire sequenze numeriche nella stringa in vettori, matrici o altri formati numerici. Ad esempio, potete passare la stringa 12;4;5 ad un nodo invece del vettore (12;4;5).

Oggetto

Il tipo Oggetto è un sottotipo di Link e viene usato solo per i dati oggetto. Tra le altre cose, questo tipo di dati vi dà accesso alle matrici locali e globali di un oggetto. Vedete anche Link sopra.

Gradiente

Questo tipo di dati consiste in un alto numero di valori che rappresentano un gradiente. Non può essere convertito ad altri tipi di dati (nonostante i singoli colori possano essere convertiti in vettori, non c’è modo per specificare la posizione di un colore nel gradiente per potervi accedere).

Includi/ Escludi

Usando gli elenchi Includi e Escludi , le luci possono essere limitate a specifici oggetti. Gli elenchi Includi e Escludi contengono un elenco di oggetti. Visto che ciò è stato specificatamente progettato per l’utilizzo con le sorgenti di luce, non è disponibile la conversione. Usate piuttosto un oggetto o una luce per leggere tag, materiali o oggetti in un campo Dati Utente.

Priorità

Il tipo di dati Priorità contiene la XPriorità e il suo valore numerico, oltre a dettagli sull’ordine del calcolo. Questo tipo di dati viene usato per le porte di priorità dei tag.

Font

Questo tipo di dati contiene informazioni sul font scelto, incluso se è un TrueType o PostScript. Ad esempio, potete utilizzare questo tipo di dati per cambiare l’aspetto di una spline testo. Il font non può essere convertito ad altri tipi.

Data/Ora

Contrariamente al tipo dati Tempo, Data/Ora richiede il tempo del sistema attuale del vostro computer (nel formato ore:minuti:secondi) e la data di sistema. Ad esempio, potete creare un’espressione Sole che cambia la posizione e il colore di una luce in base al tempo corrente.

Spline

Con il tipo dati Spline, disegnate una spline in gestione Attributi utilizzando un grafico. Il grafico va dall’estremo della variabile Min X a Max X lungo l’asse orizzontale e da Min Y a Max Y lungo l’asse verticale.

Il Pool XPresso

Il Pool XPresso fornisce un metodo rapido per aggiungere nodi all’Editor XPresso. Il Pool XPresso contiene tutti i nodi di Cinema 4D, cui potete aggiungere i vostri, dove ciascun nodo è configurato per soddisfare le vostre esigenze. Ad esempio, supponete di aver spesso bisogno di creare un nodo Math per la sottrazione di interi (Tipo Dati è impostato su Integro e Funzione è impostata su Sottrai). Piuttosto che cambiare questi parametri manualmente ogni volta che create un nodo simile, potete aggiungere il nodo configurato al Pool XPresso. La prossima volta che avete bisogno del nodo, potete trascinarlo dal pool e rilasciarlo nell’Editor XPresso, già pronto per l’uso.

Cliccando sull’icona che raffigura la lente d’ingrandimento si aprirà un filtro/riga di testo che potrà essere utilizzato per visualizzare solo i Nodi che state cercando, senza visualizzare tutte le sotto-directory.

Questo filtro lavora in tempo reale. Tutto quello che dovete fare è inserire un testo che identifichi i Nodi che volete visualizzare. Sarà visualizzato ogni elemento che contiene questo testo. Le capitalizzazioni non influenzeranno il risultato. Cliccando sul pulsante X si svuoterà il campo testo.

Per aprire il Pool XPresso:

Crea Pool

Selezionate questo comando per creare un nuovo pool per le vostre configurazioni di nodo. Utilizzate la finestra che appare per definire un percorso di salvataggio per il pool (notate che i gruppi vengono salvati nella cartella Libreria / xnodo all’interno della cartella utente); il pool viene salvato automaticamente e verrà reso disponibile ogni volta che riavviate Cinema 4D. Per aggiungere le vostre configurazioni di nodo al pool, configurate prima i nodi come desiderato nell’Editor XPresso e quindi trascinateli nel pool.

Carica Pool

Questo comando permette di aprire un file pool.

Rimuovi Presettaggio

Non potete rimuovere i nodi dal pool originale.

Rimuove dal pool il presettaggio o la cartella selezionata.

Rinomina Presettaggio

Rinomina il presettaggio. Ad esempio, se avete configurato un nodo Math per la sottrazione di interi, potete rinominarlo Sottrai Int.

Crea Cartella

Crea una nuova cartella. Questo vi permette di sistemare il vostro pool in cartelle per avere un’organizzazione migliore. Trascinate i nodi che volete posizionare all’interno della cartella dal Pool XPresso o dall’Editor XPresso e rilasciateli su essa.