日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

opengl库中gl glu glut glaux的区别

發布時間:2025/3/21 编程问答 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 opengl库中gl glu glut glaux的区别 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

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功能強大。

?

?

?

?

幾種常見的“奇異”頭文件:

?

?

<GL/glaux.h>:GLAUX(OpenGL輔助庫)所使用的函數和常量聲明。目前這個庫已經過時,只有比較少的編譯環境中有提供,例如VC系列。在VC系列編譯器中,使用這個頭文件之前必須使用#include <windows.h>或者具有類似功能的頭文件。


?<GL/glext.h>:擴展頭文件。因為微軟公司對OpenGL的支持不太積極,VC系列編譯器雖然有<GL/gl.h>這個頭文件,但是里面只有OpenGL 1.1版本中所規定的內容,而沒有OpenGL 1.2及其以后版本。對當前的計算機配置而言,幾乎都支持OpenGL 1.4版本,更高的則到1.5, 2.0, 2.1,而VC無法直接使用這些功能。為了解決這一問題,就有了 ? <GL/glext.h>頭文件。這個頭文件提供了高版本OpenGL所需要的各種常數聲明以及函數指針聲明。


?<GL/wglext.h>:擴展頭文件。與<GL/glext.h>類似,但這個頭文件中只提供適用于Windows系統的各種OpenGL擴展所使用的函數和常量,不適用于其它操作系統。

總結

以上是生活随笔為你收集整理的opengl库中gl glu glut glaux的区别的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。