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 № 1Se 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 !