Necesito que me echeis un cable para mis practicas de OpenGL.
En una tengo que hacer los dos tipos de suavizados respecto a la iluminación, el suavizado plano y el de Gouraud.
El plano ya lo he conseguido, sacando la normal y normalizandola, dandosela a OpenGL y dibujar el triangulo
glBegin(GL_TRIANGLES)
repetir para cada triangulo:
..Calculo la normal normalizada..
glNormal
glVertex
glVertex
glVertex
glEnd
Y un poco antes:
glShadeModel(GL_SHARP);
O como sea, no recuerdo
Para lo que tengo problemas es para el suavizado Gouraud. No se exactamente como hacerlo. Sé que tengo que meter una Normal para cada vertice:
glBegin(GL_TRIANGLES)
repetir para cada triangulo:
..Calculo la normal normalizada..
glNormal
glVertex
glNormal
glVertex
glNormal
glVertex
glEnd
Y un poco antes:
glShadeModel(GL_SMOOTH);
Mi pregunta es:
¿Qué normales les meto a cada vertice? He probado metiendole a los tres vertices la misma normal del triangulo pero obtengo el mismo resultado (solo varían 3 o 4 triangulos)
Gracias, y saludos
EDITO: Solucionado, me he cogido todos los triangulos y he ido sumando para cada vertice la normal de la superficie a la que pertenece. Despues normalizo los vectores para cada vertice y ya se lo paso a cada uno.