Il Buffer di Annullamento
Viene creato un registro di tutto ciò che viene fatto in Cinema 4D e di ogni funzione richiamata. Le informazioni corrispondenti vengono scritte in un'area di memoria - il buffer Undo - che offre le funzioni Annulla e Ripeti per tornare a uno stato precedente di elaborazione. Quest'area di memoria è indicata in modo chiaro nella cronologia degli annullamenti (vedi sotto).
È possibile impostare il numero di step che possono essere azzerati su Profondità Annulla.
Cinema 4D distingue tra azioni che richiedono molta memoria (ad esempio, eliminare un oggetto o spostare dei punti) e azioni che non richiedono molta memoria (ad esempio, attivare un oggetto, cambiare il materiale). Quest'ultima azione può quindi essere richiamata 30 volte quanto definito nei settaggi predefiniti di Cinema 4D
Se abbiamo impostato gli step di annullamento a 12, ad esempio, possiamo includere 12 azioni di cancellazione dell'oggetto nel buffer di annullamento o 120 azioni di attivazione dell'oggetto. Naturalmente, qualsiasi altra combinazione è possibile (ad esempio, cancellare gli oggetti 6 volte e selezionare 60 oggetti).
Esempio:
Abbiamo creato un cubo alla posizione 0, 0, 0, poi lo abbiamo ruotato a 0, 45, 0 e quindi lo abbiamo spostato alle coordinate 100, 0, 0. Dopo la terza azione - lo spostamento - il buffer di annullamento (semplificando) si presenta come segue:
- Creare l'oggetto nella posizione 0, 0, 0.
- Ruotare l'oggetto su 0, 45, 0.
- Spostare l'oggetto nella posizione 100, 0, 0.
La posizione corrente nel buffer è alla posizione 3, cioè quella del movimento. Se ora usiamo Annulla, Cinema 4D "recupera" la posizione precedente, annulla l'azione corrente (spostamento) e imposta una nuova posizione corrente sulla rotazione.
Il comando Annulla fa lo stesso se viene richiamato. Si passerà quindi alla prima posizione, quella di creazione. La rotazione viene annullata.
Il vantaggio è che il buffer non viene modificato dopo un annullamento. L'azione Sposta esiste ancora e può essere ripristinata con Ripeti.
Pertanto, con la funzione Annulla è possibile spostarsi indietro nel buffer di annullamento e in avanti con Ripeti.
Il buffer viene creato dinamicamente, cioè nulla viene cancellato, ma solo aggiunto. Come possiamo immaginare, tutto questo non deve essere portato all'estremo! Funzioni come la suddivisione portano rapidamente a oggetti molto più grandi (in termini di memoria) che vengono memorizzati anche nel buffer di Annullamento oltre che nella memoria della scena. Per questo motivo è stata fissata una soglia alla dimensione del buffer. Nei settaggi delle Preferenze possiamo definire il numero di azioni registrate nel buffer di annullamento (vedi Profondità Annulla).
Questa funzione annulla l'ultima modifica apportata alla scena. Se abbiamo utilizzato la funzione più volte di seguito, una modifica dopo l'altra verrà annullata.
Se abbiamo annullato un passaggio di troppo con le operazioni Annulla, possiamo usare questa funzione per far eseguire di nuovo automaticamente il passaggio annullato.
Il numero di passi che possono essere ripristinati corrisponde al numero di passi che possono essere annullati (vedi sopra) e quindi non viene definito separatamente.
Questa funzione è diversa dalla funzione Annulla discussa in precedenza. Influisce solo sulle azioni normali e reversibili (come muoversi). Le selezioni ad esempio non vengono considerate nei passi di annullamento.
Immaginate di aver prima ingrandito un oggetto e poi di aver selezionato dei punti in dieci punti diversi. Per fare questo, avreste dovuto utilizzare lo strumento di selezione 10 volte. Ora volete annullare il ridimensionamento. Con il normale comandoAnnulla, dovreste eseguire la funzione 11 volte (10 selezioni più 1 scalatura). Usate invece la funzione Annulla (Azione) e tutto sarà automatizzato.
Per essere precisi, si verifica quanto segue:
- Innanzitutto, il sistema registra se nel buffer è presente una selezione rimovibile.
- Se ne viene trovata una (o più consecutive), la funzione torna alla fase di elaborazione precedente alla selezione.
Sembra un po' più complicato di quanto non sia in realtà, quindi lo renderemo più chiaro con due semplici esempi:
Supponiamo che A sia un'azione normale e reversibile (come lo spostamento) e S una selezione reversibile. Ora analizzeremo i vari stati del buffer di annullamento.
Esempio 1:
È da un po' che lavorate. Il buffer contiene ora la seguente serie di azioni o selezioni:
A S A S A A A S S S S S S S
Prima avete modificato, poi selezionato, modificato di nuovo, ecc. Alla fine sono state effettuate 4 selezioni successive, l'ultima delle quali a destra (cioè, lo Stato Attuale).
Se ora eseguite un annullamento "normale", il buffer avrà il seguente aspetto:
A S A S A A A S S S
Come potete vedere ci sono ancora 3 selezioni alla fine del buffer, una è stata ritirata.
Se invece richiamate Annulla (Azione), otterrete il seguente buffer corrente:
A S A S A A
Tutte e quattro le ultime selezioni effettuate sono state annullate, così come l'ultima fase di elaborazione precedente.
Cronologia Annullamenti
Mentre nella descrizione precedente, con Annulla e Ripeti, era possibile tornare indietro o avanzare di un passo alla volta, con Cronologia Annullamenti (nel menu Modifica) possiamo elencare le ultime azioni e saltare al passo corretto in modo molto mirato. Il numero di voci elencate si basa su Profondità Annulla.
Nelle sequenze di annullamento, le modifiche più recenti sono sempre in alto e quelle più vecchie in basso.
Esempio
A sinistra possiamo vedere un breve flusso di lavoro:
- È stato creato un cubo, poi scalato e duplicato, e a entrambi è stato assegnato un tag Corpo Rigido. Quindi è stata creata una molla a cui sono stati collegati entrambi i cubi.
- Per annullare la creazione della molla, clicchiamo su "Annulla creazione della molla". Lo stato attuale della scena viene ora visualizzato nella Cronologia Annullamenti con un separatore, contrassegnato in rosso nella parte superiore.
- Se ora andiamo a creare una sfera, ad esempio, il percorso "successivo" viene cancellato. L'elenco è completato dalle seguenti azioni nellalinea di separazione.
Altre cose da sapere sul processo di annullamento:
- La Cronologia Annullamenti elenca sia le modifiche alla scena (vedi
Annulla), sia le azioni (vedi Annulla (Azione)). Inoltre, non viene fatta alcuna distinzione tra azioni ad alta intensità di memoria e azioni non ad alta intensità di memoria, come descritto in precedenza. - Eventuali modifiche alla visualizzazione non saranno prese in considerazione.