Tipos de Datos, Convenciones y Estados en OpenGL

ESTADOS

Como se había mencionado anteriormente OpenGL mantiene una considerable cantidad de variables de estado. Hay dos tipos diferentes de variables de estado, unas son las llamadas “GL server state” (estado en servidor GL) y otras las “GL client state” (estado en cliente GL”).

Variables

La mayoría de los estados que se manipulan a la hora de hacer un programa son del servidor GL. Los estados se pueden “prender” usando la función:

glEnable(GLenum state)

que recibe como parámetro el enum correspondiente al estado que se desea activar o desactivar , se puede comprobar si un estado está activo o no mediante:

isEnabled(GLenum state)

y finalmelmente se puede desactivar el estado mediante:

glDisable(GLenum state)

Algunos de los estados de común uso son:

  • GL_FOG : Estado para la muestra de niebla.
  • GL_LIGHTING: Estado para el uso de luces.
  • GL_ALPHA_TEST: Para hacer uso de las transparencias.
  • GL_DEPTH_TEST: Habilita la prueba de profundidad sobre el buffer de profundidad.
  • GL_LIGHT#: Habilita una luz, que es un número entre 0 y 7 (8 es un minimo de luces que debe soportar una implementación de OpenGL). Para que esto funcione GL_LIGHTING debe estar habilitado.
  • GL_COLOR_MATERIAL: Permite crear materiales de “color” que afectan el brillo y la difusión de las superficies. Para que esto funcione GL_LIGHTING debe estar habilitado.
  • GL_NORMALIZE: Normaliza los vectores que se pasen a través de la función glNormal().
  • GL_POLYGON_SMOOTH: Dibuja polígonos con suavizado. Para que esto funcione, se necesita el alpha buffer.
  • GL_POINT_SMOOTH: Suaviza los puntos.
  • GL_CULL_FACE: Si esta habilitado, elimina la parte de atrás de los polígonos (triángulos, rectángulos y polígonos). Se considera frente y atrás de un polígono dependiendo de el orden en que se suministran los puntos que conforman el polígono (sentido reloj o contra-reloj).
  • GL_TEXTURE_2D: Permite el uso de texturas 2d sobre las primitivas.

Bien esto es todo por este tutorial. A pesar de que en este tutorial no se desarrollaron ejemplos prácticos, existes bastantes elementos de aplicación posterior a la hora de realizar cualquier aplicación para OpenGL.

1 2

Compartir esta entrada

DiggReddit
  • Amparo

    GRACIAS POR SUBI 😆 R ESTA INFORMACION , EN VERDAD ME SERVIRA MUCHO PARA ENTER OPEN GL :)

  • http://black-byte.com Jotatsu

    Con gusto

  • CESAR

    NO ME SIRVIO DE NADA QUE MALA ONDA!!!!!!!

  • cirleyni

    de verdad que esta imformacion me sirvio para enredarme mas muchas gracias I LOVE