glutInit(): Es la función que inicializa la librería GLUT y negocia con el sistema de ventanas la apertura de una nueva ventana. Sus parámetros deben ser los mismos que los de la función main() sin modificar.
glutInitDisplayMode(): Define el modo en el que se debe dibujar la ventana. Sus parámetros, como en muchas de las funciones OpenGL, se definen con flags o máscaras de bits. En este caso, GLUT_RGB indica el tipo de modelo de color con el que se dibujará (Red-Green-Blue), GLUT_DEPTH indica que se debe incluir un buffer de profundidad y GLUT_DOUBLE que se debe utilizar un doble buffer.
glutInitWindowSize(): Se define el tamaño de la ventana en píxeles (anchura y altura).
glutInitWindowPosition(): La distancia horizontal y vertical con respecto de la esquina superior izquierda del monitor donde la ventana deberá aparecer.
glutCreateWindow(): Se crea propiamente la ventana, y el string que se pasa como argumento, es utilizado como nombre de la nueva ventana.
glutDisplayFunc(): Esta función es la más importante de las funciones callback. Gracias a la definición de las funciones callback, GLUT hace posible una dinámica de programación de aplicaciones OpenGL.
glutDisplayFunc(display): Define que la función display que es pasada como argumento sea ejecutada cada vez que GLUT determine que la ventana debe ser dibujada (la primera vez que se
muestra la ventana) o redibujada (cuando se maximiza, cuando se superponen varias ventanas, etc).
display(): Definida como función callback para dibujar o redubujar la ventana cada vez que sea necesario.
glClearColor(): Establece el color de fono de la ventana, que es con
el que se “borra” la ventana.
glClear(): Esta función se encarga de borrar el fondo de la ventana. Acepta como argumento el buffer específico que se desea borrar, en este caso el GL_COLOR_BUFFER_BIT y el GL_DEPTH_BUFFER_BIT.
glColor3f(): Establece el color actual con el que se va a dibujar una figura.
glMatrixMode(): Especifica la matriz de transformación sobre la que se van a realizar las operaciones siguientes (de nuevo, recordar que OpenGL es una maquina de estados).
glMatrixMode(GL_PROJECTION) : Afecta la perspectiva de la proyección.
glLoadIdentity(): Carga como matriz de proyección la matriz identidad. Esto es como inicializar a uno los valores de dicha matriz.
No hay comentarios:
Publicar un comentario