Gestione Modifica Normali
Informazioni Generali
Le funzioni di questa gestione ruotano tutte intorno alla modifica delle normali dei vertici. In genere le normali dei vertici vengono calcolate automaticamente dal tag Phong e questo è sufficiente nella maggior parte dei casi.
Se desiderate comunque intervenire manualmente sull'allineamento delle normali dei vertici, ad esempio per creare particolari effetti di shading, dovete disabilitare questa funzione automatica. Per fare questo, dovete avere un tag Normale che memorizzi le normali dei vertici per ogni punto dell'oggetto. Tuttavia non dovete fare nulla perché viene creato automaticamente se cambiate qualcosa nelle normali dei vertici.
Potete tuttavia crearlo manualmente da qualsiasi tag Phong: è sufficiente cliccare sul pulsante Crea Tag Normale (per fare questo l'oggetto deve essere poligonale, le primitive e i generatori, ad esempio, devono essere resi modificabili a questo scopo).
Nota:
- Tutti i comandi contenuti nella Gestione Modifica Normali sono implementati anche come comandi separati (ad esempio, Modifica Normali - Netto).
- La Gestione Trasferimento Proprietà (ex VAMP) è adatta per trasferire le normali dei vertici tra oggetti diversi.
- Le normali possono anche essere allineate in modo procedurale tramite i Campi del tag Normale.
In questo esempio, l'area rettangolare contrassegnata in rosso sulla destra è stata staccata; sono quindi presenti 2 oggetti. Come possiamo vedere a sinistra, questo produce errori di ombreggiatura. Ciò è dovuto al fatto che i punti sovrapposti del bordo hanno le normali dei vertici orientate in modo diverso.
Soluzione: selezionate entrambi gli oggetti in Gestione Oggetti, passate alla modalità Punti e selezionate tutti i punti periferici. Nella Gestione Modifica Normali, cliccate sul comando Media descritto di seguito per ottenere un'ombreggiatura perfetta e omogenea su entrambi gli oggetti.
Normali dei Vertici e Shading
Una breve escursione sulla loro importanza in relazione allo shading ci permetterà di capire perché le normali dei vertici andrebbero assolutamente verificate dall'utente.
In breve, le normali, insieme alla posizione della sorgente luminosa, definiscono la luminosità dell'ombreggiatura in una data posizione.
Tra le normali dei vertici viene eseguita un'interpolazione.
Più le normali dei vertici sono rivolte verso una sorgente luminosa, più i poligoni associati appariranno luminosi. Le normali dei vertici rivolte altrove rispetto alla fonte di luce (più precisamente: a partire dai 90°) faranno sì che i poligoni associati restino in ombra.
I punti delle mesh hanno tante normali vertici quanti sono i poligoni associati. Se le normali dei vertici di un punto sono orientate nella stessa direzione, non ci saranno sbalzi di luminosità ("hard edge") nella transizione tra poligoni adiacenti, come potete vedere nell'immagine a sinistra.
A destra invece le normali dei vertici puntano ciascuna in direzione delle proprie normali poligonali. In questo modo un oggetto non smussato appare sfaccettato, cioè ogni poligono assume la stessa luminosità, poiché anche le normali interpolate puntano tutte nella stessa direzione.
Questa condizione può essere utilizzata, ad esempio, per creare bordi rigidi (vedi immagine sotto, a sinistra). In basso, a destra, tutte le normali dei vertici sono state allineate verso la sorgente luminosa, facendo apparire tutte le superfici illuminate al massimo livello di luminosità.
Va detto che le normali possono essere inclinate in modo personale in fase di rendering (con una mappa Normali) anche tra i punti della mesh. In questo modo possiamo visualizzare i dettagli senza dover utilizzare una geometria non strettamente necessaria.
Selezione
Le normali dei vertici sono considerate "selezionate" quando viene selezionato un punto, un bordo o un poligono.
Alcuni comandi possono influire sulle normali dei vertici degli elementi selezionati. Tuttavia, dato che un punto può avere fino a quattro normali vertice, dobbiamo specificare quale normale è da considerarsi selezionata quando selezioniamo un punto, un bordo o un poligono.
Le normali dei vertici saranno considerate selezionate se un dato elemento è stato selezionato (vedi anche l'immagine):
- Poligono: sono selezionate tutte le normali dei vertici appartenenti a quel poligono (cioè ogni vertice ha esattamente 1 normale vertice selezionata).
- Bordo: sono selezionate tutte le normali dei vertici alle estremità di quel bordo (il numero è uguale al numero di poligoni che condividono questo bordo).
- Punto: sono selezionate tutte le normali dei vertici appartenenti a questo punto (il numero corrisponde a tutti i poligoni che hanno un vertice in quel punto).
Se nessun elemento è selezionato, l'effetto è lo stesso che si avrebbe se TUTTI gli elementi fossero selezionati.
Impostazioni
Spazio
Alcuni comandi sono orientati in direzione degli assi (ad esempio, Allinea). Qui possiamo scegliere se utilizzare il sistema di coordinate dell'oggetto o il sistema di coordinate assoluto.
Forza
Qui possiamo definire la forza del rispettivo comando. Un valore del 100% ha sempre un effetto completo, mentre un valore del 10% consente ad esempio di richiamare il comando più volte per valutare gradualmente l'effetto.
Direzione
Qui possiamo definire una direzione in termini vettoriali per numerosi comandi (ad esempio, Allinea). Ad esempio, se desiderate che una normale punti verticalmente verso l'alto, inserite qui 0,1,0 - o semplicemente cliccate su +Y - e poi su Allinea. È possibile definire il sistema di coordinate utilizzando il settaggio Spazio.
Allinea
Le normali dei vertici selezionati saranno allineate nella direzione X.
Questo settaggio ruota le normali dei vertici selezionati nella direzione definita in Direzione.
Distanza
Il comando Media calcola la media delle normali dei vertici entro una certa distanza da ciascuna normale dei vertici selezionati. Qui potete regolare questa distanza.
Media
Le normali dei vertici selezionati saranno ruotate nella loro direzione media.
Tutte le normali dei vertici selezionati assumeranno la loro direzione media. Questo funziona anche su più oggetti, purché gli elementi selezionati si trovino entro il raggio definito in Distanza. Specificate una Distanza di 0 se tutte le normali dei vertici di un punto devono essere mediate tra loro.
Netto
Separa le normali dei vertici dei bordi selezionati (o il contorno di una selezione di poligoni contigui) in modo da creare un bordo rigido.
In riferimento alla selezione dei bordi, questo comando funziona in modo simile a
Interrompi Shading Phong .
Morbido
Questo comando trasforma i bordi netti in una superficie smussata. In pratica imita l'effetto del tag Phong con un angolo molto ampio, cioè 180°; in sostanza tutte le normali dei vertici di un punto puntano nella stessa direzione. Questo effetto può persino trasformare un cubo in un elemento sferico in termini di ombreggiatura.
Da Selezionato
A Selezionato
Questi due comandi funzionano solo per i punti le cui normali dei vertici sono parzialmente selezionate: se selezionate un bordo o un poligono, per definizione non vengono automaticamente selezionate tutte le normali dei vertici dei punti interessati, ma solo una parte di esse, a seconda della selezione (vedi anche Selezione). Questi due comandi possono essere utilizzati per far coincidere le normali dei vertici selezionati o non selezionati tra loro (per punto) per una selezione parziale.
Qui possiamo vedere un poligono selezionato; le normali dei vertici corrispondenti sono segnate in rosso. Inoltre, per ogni punto ci sono 3 normali bianche, che appartengono agli altri poligoni adiacenti.
Questi due comandi eseguono le seguenti operazioni per punto:
- Da selezionato: le normali dei vertici selezionati vengono mediate e questa media viene assunta dalle altre. Nel caso di un singolo poligono selezionato, tutti saranno congruenti.
- A selezionato: basandosi sulle normali dei vertici non selezionati, verrà calcolata una media che verrà assunta dalle normali selezionate. Questo può essere utile, ad esempio, per smussare un singolo loop di poligoni.
X, Y, Z
Inverti
Questo comando ruota tutte le normali dei vertici selezionati di 180° nella direzione opposta (a condizione che le opzioni X, Y e Z siano tutte abilitate).
Altrimenti, è possibile definire un piano speculare perpendicolare ad esso con l'attivazione dei singoli assi. Ad esempio, se attivate solo Y, verrà specchiata solo la componente Y della normale del vertice.
Normali Poligono
Normali Vertice
Solo Selezionato
Se desiderate visualizzare le normali dei poligoni e dei vertici, attivate la rispettiva opzione. In via opzionale questo può essere applicato solo agli elementi selezionati.
Comandi
Tutti i comandi appena descritti in forma di pulsanti sono disponibili anche come singoli comandi di menu che funzionano esattamente come descritto sopra (eventuali settaggi "Spazio" non hanno alcuna funzione per la maggior parte dei comandi):
Vedi sopra.
Vedi sopra.
Vedi sopra.
Vedi sopra.
Vedi sopra.
Vedi sopra.
Vedi sopra.