Gráficas por computadora, 17I prof. G. Khachaturov
Resumen del curso #11
Tema "Texturae".
Ver: ----Tema "Texturas" de Graficacion_04.ppt
---- Ejemplo de código: http://newton.uam.mx/xgeorge/uea/graficacion/17I/09_borrador_clase_texturas_09.cpp
Comentarios a configuración de texturas en buffer de texturas de tarjeta gráfica:
(corresponde al contenido de función SetupRC() del dicho código)
Generación de nombres de texturas (glGenTextures())
Texturas 1D, 2D, y 3D, "targets" (objetivos) GL_TEXTURE_1D, GL_TEXTURE_2D, GL_TEXTURE_3D
Atar una textura, glBindTextures();
Especificación de textura, glTexImage*()
Previamente configurar la especificación de textura con glTexParameter*()
Comentarios a aplicación de texturas a las primitivas:
Aplicar textura a una primitiva, glTexCoord*()
Configurar la manera de aplicar textura mediante glTexEnv*(); Re-configurar
Ver laminas correspondientes al tema en http://newton.uam.mx/xgeorge/uea/graficacion/Graficacion_04.ppt
Leer Cap. 8 de redbook http://newton.uam.mx/xgeorge/uea/graficacion/redbook.pdf
(Pendiente) Ejercicio: Analizar uso de texturas en http://newton.uam.mx/xgeorge/uea/graficacion/TEST_programs/JET_Shadow_textures.cpp y aplicar una textura al “cubo con sombra y reflejo” empleado en clases anteriores
Una implementación:
http://newton.uam.mx/xgeorge/uea/graficacion/16O/12_TEXTURA_REFLEJO_SOMBRA_CUBO_12.cpp
Tema : Evaluadores y NURBS
Representación de curvas y superficies paramétricas.
Interpolación. Comparación de enfoques:
interpolación polinomial (Newton),
método de cuadrados mínimos (Gauss),
mediante splines.
Ejemplos de interpolación de curvas: integrada en Word; curvas Bezier, ver
http://newton.uam.mx/xgeorge/uea /graficacion/TEST_programs/redbook_samples/bezcurve.c
Interpretación de puntos de control de curvas Bezier;
Ejercicio: modificar este ejemplo para que contenga no 4 sino un número mayor de puntos de control
Evaluadores bidimensionales y aplicación de texturas,
Comparación de las técnicas de aplicar texturas a las primitivas y a las superficies evaluadas Análisis del ejemplo http://newton.uam.mx/xgeorge/uea/graficacion/TEST_programs/eval_texture_GL_MAP2_TEXTURE_2x3.cpp
Atención especial a:
Definir evaluador, función glMap*
Opciones de "target", (a espacio de vértices, colores, etc.)
estructura con puntos de control, etc.
Alternativas de evaluación:
con glEvalCoord*
Con glMapGrid* y glEvalMesh
Ejemplos correspondientes a estas alternativas:
http://newton.uam.mx/xgeorge/ uea/graficacion/TEST_programs/JET_Shadow_textures.cpp
y
http://newton.uam.mx/xgeorge/ uea/graficacion/TEST_programs/eval_texture_GL_MAP2_TEXTURE_2x3.cpp
Combinar evaluadores con texturas (ver el último ejemplo).
Comparar uso de evaluadores en
http://newton.uam.mx/xgeorge/uea/graficacion/TEST_programs/redbook_samples/bezcurve.c
y
http://newton.uam.mx/xgeorge/uea/graficacion/TEST_programs/redbook_samples/bezsurf.c
con
http://newton.uam.mx/xgeorge/uea/graficacion/TEST_programs/eval_texture_GL_MAP2_TEXTURE_2x3.cpp
Ejercicios implementados en salón:
(Pendiente)Combinar el mundo formado por 'cubo con reflejo, sombra, stencil, textura en una cara' con el objeto generado en 'texturesurf.c' los ejemplos de código de 'redbook'.Una implementación ver: http://newton.uam.mx/xgeorge/uea/graficacion/16I/evaluadores_combinados_con_cubo.cpp
Modificar http://newton.uam.mx/xgeorge/uea/graficacion/TEST_programs/redbook_samples/bezcurve.c de tal manera que en lugar de glEvalCoord1f se aplica malla unidimensional (glEvalMesh1). Una impelementación ver en http://newton.uam.mx/xgeorge/uea/graficacion/16O/12_curva_Bezier_implementada_con_malla_12.cpp
Ver laminas correspondientes al tema en http://newton.uam.mx/xgeorge/uea/graficacion/Graficacion_04.ppt
Leer Cap. 12 de redbook http://newton.uam.mx/xgeorge/uea/graficacion/redbook.pdf
Aviso de siguiente tarea (texturas)
Tags: gráficas, resumen, khachaturov, computadora