Vai al contenuto
Emmo

Welding dei vertici e Displace con 3ds

Recommended Posts

Ciao a tutti, mi trovo davanti a un problema banale ma che mi sta dando molto filo da torcere. Sto ripulendo una geometria da tutti gli chamfer fatti a caso tempo fa. Quando però vado a fare il weld dei vertici, il poligono adiacente mi diventa "difettoso", nel senso che gli viene attribuita un ombreggiatura differente rispetto agli altri.

scaled.php?server=17&filename=verticiuniti.jpg&res=landing

Se invece prendo il vertice, ottenuto dal precedente weld, e clicco su Broke, il poligono torna "normale" visivamente. Ovviamente però il numero di vertici torna quello iniziale.

scaled.php?server=39&filename=verticidivisi.jpg&res=landing

Tutto ok finora, la cosa naturale che viene da dire è quella di tenere i vertici divisi. Il problema nasce qui. Utilizzando infatti il vray displacement mod, l'estrusione della mappa si "rompe" in prossimità degli angoli e appare come aperta. Questo accade anche tenendo attivato "keep continuity".

scaled.php?server=140&filename=verticidivisirender.jpg&res=landing

Non so quindi come agire per ripulire la geometria correttamente.

Condividi questo messaggio


Link al messaggio
Condividi su altri siti
Inviata (modificato)

Quando esegui il weld di vertici o edge quello che probabilmente si scombina sono gli smoothing groups.

Prova, dopo aver eseguito un weld che ti dà come risultato quell'ombreggiatura, ad aggiungere un modificatore smooth, mettendo le spunte ad autosmooth, soglia 30 e prevent indirect smoothing.

Dovresti risolvere.

Se risolvi in questo modo puoi anche tenere in cima allo stack il modificatore smooth e ad operare il welding con un modificatore edit mesh o edit poly posizionato in mezzo, tra la geometria e lo smooth.

PS

se hai tutti i vertici e gli edge al loro posto e devi sono eseguire un welding di tutta la geometria, prova ad aggiungere un modificatore vertexweld con una soglia di 0,01


Modificato da philix

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Ok provo, innanzitutto grazie per la risposta :) . Ma quindi è una sorta di bug del programma? Perchè la cosa giusta dovrebbe essere quella di tenere i vertici uniti piuttosto che divisi, o almeno credo.

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

no, non è un bug. ma i gruppi di smusso (e di mappatura) hanno dei vertici come riferimento, tu collassi quel vertice, quindi il software deve "approssimare" lo smoothing group creando quell eombre.

se riapplichi un modificatore smooth come dice Philix, rimetti l ecose a posto.

Condividi questo messaggio


Link al messaggio
Condividi su altri siti
Inviata (modificato)

Non è un bug ma è una caratteristica basilare dei software che operano nell'ambito della cg tridimensionale

I gruppi di smusso funzionano in base alle facce

Se due facce che hanno un edge in comune appartengono allo stesso smoothing group (il numero assegnato negli smoothing group alle facce è lo stesso) allora il motore di rendering calcolerà l'ombreggiatura interpolando l'ombra tra le due, restituendo un effetto smussato, come se lo spigolo tra le facce non esistesse.

Al contrario, se le due facce hanno smoothing group differente, le facce saranno rappresentate con lo spigolo.

Per verificare l'effetto prova a creare una sfera, visualizzandola in shaded, e attiva e disattiva lo smoothing nelle proprietà.

Quando esegui un weld vai ad attaccare due facce. Se le facce hanno lo stesso smothing group, anche se sono piane o a 90°, il software cercherà di smussarle restituendo quell'effetto di ombra che non è altro che il tentativo di interpolare l'ombreggiatura tra i due spigoli.

Il modificatore che ti ho fatto aggiungere capisce, in base all'angolo che formano le facce adiacenti (threshold), se deve considerare le facce come da smussare o no.

Nel tuo caso, trovando le facce piane o con angolo maggiore di 30°, dice al software di considerare tali facce come spigoli e non da smussare.

PS

ti ho parlato di facce e spigoli. In realtà tutta la teoria e gli algoritmi si basano sui vertici e le normali assegnate a questi ultimi.

Qui un po' di teoria, con altri link, per approfondire

http://en.wikipedia.org/wiki/Shading#Smooth_shading


Modificato da philix

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Si il concetto l'ho capito, quello che non mi è ancora chiaro è il motivo per cui i gruppi di smusso sono stati cambiati col tempo. Perchè io personalmente non li ho mai cambiati. Non sono pratico, non avendoli mai usati, quindi probabilmente sto dicendo delle cavolate.

Cioè inizialmente, quando gli edge erano "smussati" dallo chamfer, non avevo problemi di smussatura. Quindi presumo non fosse stato assegnato nessun gruppo o roba simile.E' nel momento che ho fatto il weld che sono comparsi i problemi e quindi credo anche i gruppi di smusso sballati. E' per questo che mi è sorto il dubbio che fosse un bug, non avendo io personalmente cambiato tali impostazioni.

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Nel tuo caso, tutte le facce appartenevano allo stesso gruppo di smusso.

Fin quando c'erano le facce del chamfer l'interpolazione dell'ombreggiatura avveniva in quella piccola area costituita dalle facce del chamfer attaccate alle facce più grandi. Quindi la sfumatura dell'ombra c'era ma stava sugli spigoli e lì rimaneva.

Nel momento in cui sei andato a togliere le facce piccoline e hai attaccato le grandi il software si è trovato a dover interpolare l'ombra tra due grosse facce e di conseguenza a spalmare l'ombreggiatura sfumata su due grosse aree dando come risultato quelle ombre nere.

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Allora ci ho fatto caso adesso, prima del weld non hanno gruppo di smusso mentre dopo viene assegnato un gruppo a ogni faccia interessata. Quindi ho fatto un test, ho selezionato tutte le facce della geometria e ho tolto a tutte le facce i gruppi di smusso. Ora anche senza il modificatore smooth la geometria è pulita e senza ombreggiature. E' giusto fare così o rischio di fare casini? Tanto per avere un modificatore in meno nello stack..

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

vedi che un modificatore in più o in meno non è che ti fa male, anzi... più modificatori hai, più hai possibilità di intervenire e tornare indietro sul tuo lavoro.

Avere in cima il modificatore smooth ti mette al riparo da qualsiasi casino, poi sei liberissimo di scegliere il tuo modo di lavorare :)

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Eh lo so, infatti era per quello che ti chiedevo se mi poteva dare problemi questa scelta drastica. Continuo così, dopotutto è proprio scondrandosi in questi problemi che impari cose nuove. Grazie ancora per la disponibilità, ti ho dato il tuo 50° voto positivo :Clap03:

Condividi questo messaggio


Link al messaggio
Condividi su altri siti
Inviata (modificato)

Grazie a te :)

Sul forum mancava ancora una spiegazione sugli smoothing groups (almeno mi pare).

Adesso chi si imbatte nel problema lo si ridireziona qui

:hello:


Modificato da philix

Condividi questo messaggio


Link al messaggio
Condividi su altri siti

Crea un account o accedi per commentare

Devi essere un utente per poter lasciare un commento

Crea un account

Registrati per un nuovo account nella nostra comunità. è facile!

Registra un nuovo account

Accedi

Hai già un account? Accedi qui.

Accedi ora


  • Navigazione recente   0 utenti

    Non ci sono utenti registrati da visualizzare in questa pagina.

×