Compartir a través de


Primitivos y comandos

OpenGL dibuja puntos primitivos, segmentos de línea o polígonos sujetos a varios modos seleccionables. Puede controlar los modos de forma independiente entre sí. Es decir, establecer un modo no afecta a si se establecen otros modos (aunque muchos modos pueden interactuar para determinar lo que finalmente termina en el framebuffer). Para especificar primitivos, establecer modos y realizar otras operaciones de OpenGL, se emiten comandos en forma de llamadas de función.

Los primitivos se definen mediante un grupo de uno o varios vértices. Un vértice define un punto, un extremo de una línea o una esquina de un polígono donde se encuentran dos bordes. Los datos (que constan de coordenadas de vértice, colores, normales, coordenadas de textura y marcas de borde) están asociados a un vértice, y cada vértice y sus datos asociados se procesan de forma independiente, en orden y de la misma manera. Las únicas excepciones a esta regla son los casos en los que se debe recortar el grupo de vértices para que un primitivo determinado se ajuste dentro de una región especificada. En este caso, los datos de vértices se pueden modificar y crear nuevos vértices. El tipo de recorte depende del primitivo que representa el grupo de vértices.

Los comandos siempre se procesan en el orden en que se reciben, aunque puede haber un retraso indeterminado antes de que un comando surta efecto. Esto significa que cada primitivo se dibuja completamente antes de que se aplique cualquier comando posterior. También significa que los comandos de consulta de estado devuelven datos coherentes con la ejecución completa de todos los comandos OpenGL emitidos anteriormente.