Tuesday, August 12, 2008

Blender o non Blender?

I lavori di modellazione 3D continuano, ancora siamo a livello di "pasticci", ma la qualità e' quantomeno migliorata rispetto agli screenshot di qualche mese fa.
Il problema con il quale però sto combattendo attualmente riguarda la qualità degli "smussi", ovvero la tecnica usata per far sembrare tondeggianti anche gli oggetti che invece sono spigolosi.


Una volta esportati con Blender gli effetti sono terribili.




Forse sbaglio qualcosa io ma...

Domanda: avete qualche buon editor di mesh da propormi? Cioe' non vorrei abbandonare blender, ma se non ne vengo a capo devo considerare anche qualche altro tool..

5 comments:

gugand said...

Mi sembra che il tuo sia un problema di come gestisci le illuminazioni dei triangoli oppure le normali ai vertici sono sbagliate. Prova a farti mostrare dal blender la direzione delle normali dei vertici(solo in edit mode), e vedi di chi e' la colpa. Sembra che i vertici abbiano tutte le normali parallele.

PS:Prova anche ad esportare e reimportare la mesh che usi nel tuo gioco, puo' darsi che proprio l'esportazione sia la causa di questo problema.

gugand said...

Dimenticavo una cosa.
Lo "smoothed everywhere" e' dovuto al goroud shading.
Se non vuoi quell'effetto devi raddoppiare i vertici lungo gli spigoli che vuoi senza smooth. I due vertici sovrapposti dovranno avere le normali direzionate in modo diverso.

Anonymous said...

Il problema che hai è il classico effetto da interpolazione phong troppo elevata.

Quando modelli, puoi assegnare al modello o a parte di esso un'impostazione che indica come "arrotondare" le ombre.

E' un numero, tra 0 e 90° (esclusi), e indica il valore dell'angolo supplementare oltre il quale il programma simula un blend tra le ombre.

Per dire: se imposti il phong a 60, e hai due superfici con un angolo di 100 gradi NON vengono phongate. Se l'angolo è di 120,5 il phong effettua una sfumatura delle ombre presenti sulle facce e dà un effetto come di una superficie continua.

Non conosco abbastanza blender per dirti se il metodo migliore è quello serio (cambia il valore di phong per le parti del modello interessate) o quello più grezzo indicato da Gugand.

Senz'altro ti dico che che quest'ultimo può dare molti problemi in esportazione, non a tutti i modellatori piacciono facce e spigoli degeneri, o le zero lenght features.

gugand said...

jollyroger:
Il blender permette di creare spigoli su cui non applicare l'autosmoothing (ad un angolo che si puo' impostare). Il blender fa finta di avere tutti i vertici doppi lungo queste linee con normali perpendicolare ai triangoli.
Non so se hai lavorato con le directX, ma queste stabiliscono il colore del vertice in base alla luce e alla normale al vertice. Non prevedono trattamenti speciali sui spigoli. Sempre che non si scelga di usare un flat shading che stabilisce il colore di un triangolo in base a quello di un solo vertice, ma in questo caso perderebbe lo smooth e ci vorrebbe un gran lavoro dovendo impostare delle normali ai vertici.

PdG said...

Ringrazio tutti per le risposte.

Ho (in parte) risolto il problema utilizzando un modificatore di blender che mi raddoppia gli spigoli dove due facce hanno tra loro un angolo maggiore di un tot.
La cosa sembra funzionare anche se un po' mi lascia perplesso il dover utilizzare una simile procedura che di fatto aumenta la complessita' della mesh.
Devo trovare ora il modo per poter applicare selettivamente lo strumento, in modo da rendere morbide alcune parti della mesh, e sfaccettate altre.