GL GLU GLUT的關系
OpenGL中的gl庫是核心庫,glu是實用庫,glut是實用工具庫。
gl是核心,glu是對gl的部分封裝,glut是OpenGL的跨平台工具庫。
gl中包含了最基本的3D函數,而glu似乎對gl的輔助,如果算數好,不用glu的情況下,也是可以做出同樣的效果。
glut是基本的視窗界面,如果不喜歡用glut可以用MFC和Win32視窗等代替,但是glut是跨平台的,這就保證了我們編出的程式是跨平台的,如果用MFC或者Win32隻能在windows作業系統上使用。選擇OpenGL的一個很大原因就是因為它的跨平台性,是以我們可以盡量的使用glut庫。
GLUT 不是 OpenGL 所必須的,但它會給我們的學習帶來一定的友善。
首先,需要包含頭檔案#include <GL/glut.h>,這是 GLUT 的頭檔案。本來 OpenGL 程式一般還要包含<GL/gl.h>和<GL/glu.h>,但 GLUT 的頭檔案中已經自動将這兩個檔案包含了,不必再次包含。
各種庫
opengl 實用庫 : 43個函數,以glu開頭,包括紋理映射、坐标變換、多邊形分化、繪制一些如橢球、圓柱、茶壺等簡單多邊形實體部分函數象核心函數一樣在任何OpenGL平台都可以應用。
opengl輔助庫: 31個函數,以aux 開頭。
OpenGL函數庫相關的API有核心庫(gl)、實用庫(glu)、輔助庫(aux)、實用工具庫(glut)、視窗庫(glx、agl、 wgl)和擴充函數庫等。
gl是核心,glu是對gl的部分封裝。
glx、agl、wgl 是針對不同視窗系統的函數。
glut是為跨平台的OpenGL程式的工具包,比aux功能強大。
幾種常見的“奇異”頭檔案: