/ / Tecniche per smussare i bordi delle facce in OpenGL: opengl, illuminazione, levigatura

Tecniche per smussare i bordi del viso in OpenGL: opengl, illuminazione, levigatura

Quando accendo il mio modello umano in OpenGL usando la facciale normali è molto evidente dove ogni faccia è sul modello. L'illuminazione diventa considerevolmente più fluida usando le normali dei vertici, ma è comunque visibile. Esiste qualche tecnica per lisciare modelli organici senza aggiungere ulteriori vertici (ad esempio suddivisioni)?

risposte:

6 per risposta № 1

Se visualizzi volti singoli con normali per vertice, potresti aver dimenticato di abilitare l'orientamento uniforme:

glShadeModel(GL_SMOOTH);

Se ciò non aiuta, assicurati che tutti i vertici conla stessa posizione ha anche la stessa normale. Questo dovrebbe essere fatto automaticamente da Blender. È anche possibile che il tuo modello abbia solo troppi poligoni: se è così, devi usare più poligoni o fare quello che ha detto basszero. Crea una mappa normale e usalo insieme a uno shader GLSL.


4 per risposta № 2

Se hai accesso a un modello / mesh con risoluzione superiore o forse a un decente Strumento di modellazione 3d che può creare un modello highres tramite suddivisioni o altri metodi di fantasia ...

GLSL per-pixel-illuminazione + mappe normali

AGGIORNARE:

http://www.blender.org/development/release-logs/blender-246/render-baking/


1 per risposta № 3

Sì, ci sono molte tecniche diverse. Si calcola innanzitutto una normale per ogni faccia (che probabilmente si sta usando per i vertici in faccia) e si usano queste normali per calcolare le nuove normali per ciascun vertice.

Qui "s uno dove calcoli la media di cinque triangoli adiacenti.

Saluti !