Opengl API簡介

原帖地址:http://blog.csdn.net/zmy3376365/article/details/7569642

ps:紅寶書 OpenGL編程指南(原書第七版),李軍等譯.北京:機械工業出版社

API

簡介

紅寶書頁碼

 

A

 

glAccum

操作累加緩衝區

327

glAddSwapHintRectWIN

定義一組被SwapBuffers拷貝的三角形

 

glActiveTexture

選擇可以由紋理函數進行修改的當前紋理單位

297

glAlphaFunc

設置用於alpha測試的參考值和比較函數

317

glAreTexturesResident

查詢n個紋理對象的紋理常駐狀態

280

glArrayElement

獲取當前所有以啓用數組的一個頂點的數據

47

glAttachShader

關聯着色器對象和程序

430

 

B

 

glBegin,glEnd

定義一個或一組原始的頂點

28

glBeginConditionalRender,glEndConditionalRender

根據遮擋查詢的結果刪除一些OpenGl渲染命令

325

glBeginQuery, glEndQuery

開始或結束一次遮擋查詢

323

glBeginTransformFeedback, glEndTransformFeedback

開始或結束變換反饋模式

459

glBindAttribLocation

 

456

glBindBuffer

指定當前的活動緩衝區對象

58

glBindBufferRange, glBindBufferBase

 

441

glBindFragDataLocation

 

463

glBindFrameBuffers

指定一個真緩衝區對象用於讀取或寫入

332

glBindRenderBuffers

創建一個有名稱的渲染緩衝區對象

334

glBindTexture

允許建立一個綁定到目標紋理的有名稱的紋理

278

glBindVertexArray

把要使用的頂點數組數據的集合與單個已分配的對象關聯起來

65

glBitmap

繪製一個位圖

205

glBlendColor

設置混合操作的常量顏色

154

glBlendEquation

指定混合方式

154

glBlendEquationSeparate

指定混合方式

154

glBlendFunc

像素混合算法

153

glBlendFuncSeparate

類似glBlendFunc()

153

glBlitFramebuffer

複製像素矩形

340

glBufferData

分配存儲單位

58

glBufferSubData

glBufferSubData()指向的數據更新glBufferData()的數據

60

 

C

 

glCallList

執行一個顯示列表

193

glCallLists

執行n列顯示列表

195

glCheckFramebufferStatus

返回幀緩衝區完整性狀態

339

glClampColor

指定主顏色值和輔助顏色值是否截取

120

glClear

用當前值清除緩衝區

21

glClearAccum

爲累加緩衝區指定用於清除的值

312

glClearBuffer

清除緩衝區

313

glClearBufferfi

清除深度緩衝區和模板緩衝區

313

glClearColor

爲色彩緩衝區指定用於清除的值

21/312

glClearDepth

爲深度緩衝區指定用於清除的值

312

glClearIndex

在顏色索引模式下設置當前的清除顏色

121/312

glClearStencil

爲模板緩衝區指定用於清除的值

312

glClientActiveTexture

用頂點數組指定紋理座標數據

299

glClipPlane

定義被裁剪的一個平面幾何體

102

glColor

設置當前色彩

119

glColorMask

設置掩碼,把寫入控制在指定的緩衝區

315

glColorMaterial

使一個材質色彩指向當前的色彩

143

glColorPointer

定義一列色彩數組

45

glColorTable

定義顏色表

231

glColorTableParameter

指定需要設置縮放和偏移值的顏色表

232

glColorSubTable

定義目的紋理的調色板的一部分被替換

234

glConvolutionFilter1D

一維的卷積過濾器

238

glConvolutionFilter2D

二維的卷積過濾器

235

glConvolutionParameter

設置卷積過濾器的執行方式

239

glCompileShader

編譯着色器對象的源代碼

429

glCompressedTexImage1DglCompressedTexImage2D

glCompressedTexImage3D

加載一個以壓縮格式存儲的紋理定義一個一維、二維或三維的紋理

265

glCompressedTexSubImage1DglCompressedTexSubImage2D

glCompressedTexSubImage3D

加載一個以壓縮格式存儲的紋理定義一個一維、二維或三維的紋理

266

glCopyConvolutionFilter1D

一維的卷積過濾器,用顏色緩衝區中的像素初始化

239

glCopyConvolutionFilter2D

二維的卷積過濾器,用顏色緩衝區中的像素初始化

237

glCopyColorSubTable

使用幀緩衝區的數據來替換部分顏色表

234

glCopyBufferSubData

複製緩衝區對象的數據

63

glCopyColorTable

使用幀緩衝區的數據來定義顏色表

233

glCopyPixels

拷貝幀緩衝區裏的像素

214

glCopyTexImage1D

將像素從幀緩衝區拷貝到一個單空間紋理圖象中

260

glCopyTexImage2D

創建一個二維紋理,使用幀緩衝區的數據定義紋理單元

255

glCopyTexSubImage1D

從幀緩衝區拷貝一個紋理的子圖象

259

glCopyTexSubImage2D

從幀緩衝區拷貝一個紋理的子圖象

260

glCopyTexSubImage3D

從幀緩衝區拷貝一個紋理的子圖象

263

glCreateProgram

創建一個空的着色器程序

429

glCreateShader

創建着色器對象

429

glCullFace

定義前面或後面是否能被精選

37

 

D

432

glDeleteBuffers

刪除緩衝區對象

63

glDeleteFrameBuffers

刪除幀緩衝區對象

333

glDeleteLists

刪除n個顯示列表

194

glDeleteProgram

刪除着色器程序

432

glDeleteQueries

刪除n個遮擋查詢對象

324

glDeleteRenderBuffers

刪除渲染緩衝區對象

333

glDeleteShader

刪除着色器對象

432

glDeleteTextures

刪除命名的紋理對象

280

glDeleteVertexArrays

刪除頂點數組對象

69

glDepthFunc

設置深度測試的比較函數

322

glDepthMask

設置掩碼,把寫入控制在指定的緩衝區

315

glDepthRange

定義z值,在視口變換期間執行

97

glDetachShader

刪除着色器對象與程序的關聯

430

glDrawArrays

創建了一個幾何圖元序列

50

glDrawArraysInstanced

多次有效的調用glDrawArrays()

54

glDrawBufferglDrawBuffers

選擇用與寫入或清除的顏色緩衝區

314

glDrawElements

使用count個元素定義一個幾何圖元序列,這些元素的索引值保存在indices數組中

48

glDrawElementsInstanced

多次有效的調用glDrawElements ()

54

glDrawPixels

將一組數據從內存寫入幀緩衝區

213

glDrawRangElements

創建了一個幾何圖元序列

50

 

E

 

glEdgeFlagglEdgeFlagv

表示一個頂點是否應該被認爲是多邊形的一條邊界邊的起點

41

glEdgeFlagPointer

定義一個邊緣標誌數組

45

glEnable, glDisable

打開或關閉OpenGL的特殊功能

31

glEnablei, glDisablei

爲緩衝區打開或關閉混合

325

glEnableClientState,

glDisableClientState

指定需要啓用或禁用的數組

44

glEnableVertexAttribArray,

glDisableVertexAttribArray

啓用或禁用頂點屬性數組

457

glEvalCoord1 glEvalCoord2

啓用一維或二維求值器執行計算

364

glEvalMesh1,glEvalMesh2

求解一維和二維點或線的網格

365

glEvalPoint1,glEvalPoint2

生成及求解一個網格中的單點

 

 

F

 

glFeedbackBuffer

創建一個保存反饋數據的緩衝區

399

glFinish

強制以前發出的OpenGL命令完成執行

24

glFlush

在有限的時間裏強制OpenGL的執行

23

glFlushMappedBufferRange

一個緩衝區範圍中的值已經修改

62

glFogf,glFogi,glFogfv,glFogiv

定義霧參數

175

glFogCoordf,glFogCoordd

設置霧座標

178

glFogCoordPointer

定義一列霧座標數組

45

glFramebufferRenderbuffer

渲染緩衝區附加到幀緩衝區對象

336

glFramebufferTexture1D, glFramebufferTexture2D, glFramebufferTexture3D

把紋理對象的一層作爲渲染附加添加到一個幀緩衝區對象

337

glFramebufferTextureLayer

附加一個三維紋理的一層或一個一維數組紋理或一個二維數組紋理作爲一個幀緩衝區附加

339

glFrontFace

定義多邊形的前面和背面

37

glFrustum

當前矩陣乘上透視矩陣

94

 

G

 

glGenBuffers

buffers數組中返回n個當前未使用的名稱,表示緩衝區對象

57

glGenFrameBuffers

分配n個未使用的幀緩衝區對象名

332

glGenLists

生成一組空的連續的顯示列表

191

glGenQueries

返回n個未被使用的名稱,可用於遮擋查詢對象的名稱

323

glGenRenderBuffers

分配n個未使用的渲染緩衝區對象名

333

glGenTextures

生成紋理名稱

277

glGenVertexArrays

返回n個未使用的名字作爲數組的頂點數組對象

65

glGenerateMipmap

爲紋理圖像生成一組完整的mipmap

271

glGetAttribLocation

 

456

glGetBooleanv,

glGetDoublev,

glGetFloatv,

glGetIntegerv

返回狀態變量

32

glGetClipPlane

返回特定裁減面的係數

 

glGetColorTable

從當前目標紋理調色板得到顏色表數據

 

glGetColorTableParameterfvglGetColorTableParameteriv

從顏色表中得到調色板參數

 

glGetError

返回錯誤消息

405

glGetHistogram

返回柱狀圖統計信息

242

glGetLightfv,glGetLightiv

返回光源參數值

 

glGetMapdv,glGetMapfv,glGetMapiv

返回求值程序參數

 

glGetMaterialfv,glGetMaterialiv

返回材質參數

 

glGetMinmax

返回最小最大值操作的結果

234

glGetPixelMapfv,glGetpixelMapuiv,glGetpixelMapusv

返回特定的像素圖

 

glGetPointerv

返回頂點數據數組的地址

 

glGetPolygonStipple

返回多邊形的點圖案

 

glGetProgramInfoLog

返回着色器程序最後一次編譯日誌

430

glGetQueryObjectiv,

glGetQueryObjectuiv

返回遮擋查詢對象的狀態

324

glGetShaderInfoLog

返回着色器最後一次編譯日誌

429

glGetString

返回描述當前OpenGl連接的字符串

406

glGetStringi

返回與表示索引狀態目標的index相關的字符串

408

glGetTexEnvfv

返回紋理環境參數

 

glGetTexGendv,glGetTexGenfv,glGetTexGeniv

返回紋理座標生成參數

 

glGetTexImage

返回一個紋理圖象

 

glGetTexLevelParameterfv,glGetTexLevelParameteriv

返回特定細節層的紋理參數

256

glGetTexParameterfv,glGetTexParameteriv

返回紋理參數值

 

 

H

 

glHint

控制OpenGL的一些行爲(鋸齒)

163

glHistogram

存儲一副圖像的柱狀圖數據

241

 

I

 

glIndex

建立當前的色彩索引

120

glIndexMask

設置掩碼,把寫入控制在指定的緩衝區

315

glIndexPointer

定義一個顏色索引數組

45

glInitName

初始化名字堆棧

385

glInterleavedArrays

同時定義和允許幾個在一個大的數組集合裏的交替數組

55

glIsBuffer

buffer是否存在

58

glIsEnabled

被查詢的狀態當前是禁用或啓用狀態

31

glIsEnabledi

對緩衝區來說,混合是否打開

325

glIsFrameBuffers

檢查幀緩衝區對象名稱

333

glIsList

檢測顯示列表名稱

194

glIsProgram

檢測着色器名稱

432

glIsQuery

檢查遮擋查詢名稱

323

glIsRenderBuffers

檢測渲染緩衝區對象名稱

334

glIsShader

檢測着色器對象名稱

432

glIsTexture

確定一個名字對應一個紋理

277

glIsVertexArray

檢查頂點數組對象

69

 

L

 

glLightf,glLighti,glLightfv,glLightiv

創建光源

129

glLightModelf,glLightModeli,glLightModelfv,glLightModeliv

設置光照模型的屬性

138

glLineStipple

設置直線的當前點畫模式

33

glLineWidth

以像素爲單位設置直線寬度

33

glLinkProgram

對鏈接到程序的所有着色器進行處理

430

glListBase

glCallLists()設定顯示列表的偏移量

195

glLoadIdentity

把當前矩陣設置爲單位矩陣

83

glLoadMatrixd,glLoadMatrif

用一個任意矩陣替換當前矩陣

84

glLoadTransposeMatrix

用一個任意矩陣替換當前矩陣

84

glLoadName

將一個名字調入名字堆棧

385

glLogicOp

爲色彩索引渲染定義一個邏輯像素操作

326

 

M

 

glMap1d,glMap1f

定義一個一維求值程序

363

glMap2d,glMap2f

定義一個二維求值程序

365

glMapBuffer

返回一個指向緩衝區對象的數據存儲的指針

60

glMapBufferRange

返回一個指向緩衝區對象的數據存儲的指針

61

glMapGrid1d,glMapGrid1f,glMapgrid2d,glMapGrid2f

定義一個一維或二維網格

367

glMaterialf,glMateriali,glMateriafv,glMaterialiv

爲光照模型定義材料屬性

140

glMatrixMode

定義哪一個矩陣是當前矩陣

83

glMinmax

計算一副圖像的最小和最大像素值

243

glMultMatrixd,glMultMatrixf

用任意矩陣與當前矩陣相乘

84

glMultTransposeMatrix

用任意矩陣與當前矩陣相乘

84

glMultiTexCoord

爲多重紋理指點頂點和紋理座標

298

glMultiDrawArrays

調用一系列的glDrawArrays ()函數

51

glMultiDrawElements

調用一系列的glDrawElements()函數

49

 

N

 

glNewList,glEndList

創建或替換一個顯示列表

191

glNormal3*

根據參數設置當前的法線向量

42

glNormalPointer

設定一個法向數組

45

 

O

 

glOrtho

用垂直矩陣與當前矩陣相乘

96

 

P

 

glPassThrough

在反饋緩衝區做記號

400

glPixelMapfv,glPixelMapuiv,glPixelMapusv

設定像素交換圖

221

glPixelStoref,glpixelStorei

設定像素存儲模式

217

glPixelTransferf,glPixelTransferi

設定像素傳輸模式

219

glPixelZoom

設定像素縮放因數

222

glPointParameteri,glPointParameterf

設置與點圖元的渲染相關的值

181

glPointSize

設置被渲染點的寬度,以像素爲單位。必須大於0.0,默認1.0

32

glPolygonMode

控制一個多邊形正面和背面的繪圖模式

36

glPolygonOffset

設定OpenGL用於計算深度值的比例和單元

183

glPolygonStipple

定義填充多邊形的當前點畫模式

38

glPrimitiveRestartIndex

指定一個頂點數組元素索引,用來表示一個新的圖元在渲染時的開始位置

51

glPrioritizeTextures

設定紋理常駐優先級

281

glPushAttrib,glPopAttrib

屬性堆棧的壓入和彈出操作

70

glPushClientAttrib,glPopClientAttrib

在客戶屬性堆棧存儲和恢復客戶狀態值

71

glPushMatrix,glPopMatrix

矩陣堆棧的壓入和彈出操作

101

glPushName,glPopName

名字堆棧的壓入和彈出操作

385

 

R

 

glRasterPos

定義像素操作的光柵位置

204

glReadBuffer

選擇顏色緩衝區

314

glReadPixels

從幀緩衝區讀取一組數據

210

glRectd,glRectf,glRecti,glRects,glRectdv,glRectfv,glRectiv,glRectsv

繪製一個矩形

26

glRenderMode

控制應用程序是處於渲染模式、選擇模式還是反饋模式

384

glRenderbufferStorage,

glRenderbufferStorageMultisample

爲綁定的渲染緩衝區分配存儲空間來存儲圖像數據

334

glResetHistogram

柱狀圖計數器重置爲0

243

glResetMinmax

把最小最大值重置爲初始值

244

glRotated,glRotatef

將旋轉矩陣與當前矩陣相乘

87

 

S

 

glSampleCoverage

設置參數,解釋alpha

172

glScaled,glScalef

將一般的比例矩陣與當前矩陣相乘

87

glScissor

定義裁減框

316

glSelectBuffer

爲選擇模式值建立一個緩衝區

384

glSeparableFilter2D

二維的可分離卷積過濾器

238

glSecondaryColor3

設置當前輔助顏色

303

glSecondaryColorPointer

定義一組輔助顏色索引數組

45

glShadeModel

選擇平直或平滑着色

121

glShaderSource

指定與着色器相關聯的着色器源代碼

429

glStencilFuncglStencilFuncSeparate

設置模板測試所使用的比較函數、參考值和掩碼

318

glStencilMaskglStencilMaskSeparate

設置掩碼,把寫入控制在指定的緩衝區

315

glStencilOp, glStencilOpSeparate

設置模板緩衝區的數據的修改方式

318

 

T

 

glTexCoord

設置當前紋理座標

284

glTexCoordPointer

定義一個紋理座標數組

45

glTexEnvf,glTexEnvi,glTexEnvfv,glTexEnviv

設置當前的紋理函數

282/299

glTexGend,glTexGenf,glTexGendv,glTexGenfv,glTexGeniv

自動生成紋理座標

289

glTexImage1D

定義一個一維的紋理數組

259

glTexImage2D

定義一個二維的紋理數組

252

glTexImage3D

定義一個三維紋理或一個二維紋理的數組

261

glTexParameterf,glTexParameteri,glTexParameterfv,glTexParameteriv

設置紋理參數,控制它的處理方式

287

glTexSubImage1D

定義一個一維紋理圖像的一部分,用來替換現有的紋理圖像

260

glTexSubImage2D

定義一個二維紋理圖像的一部分,用來替換現有的紋理圖像

257

glTexSubImage3D

定義一個三維紋理圖像的一部分,用來替換現有的紋理圖像

257

glTranslated,glTranslatef

將當前矩陣與一個表示移動物體的矩陣相乘

87

glTransformFeedbackVarryings

 

459

 

U

 

glUnmapBuffer

緩存區對象的更新已完成,並且這個緩衝區可以釋放

60

glUseProgram

着色器程序對頂點或片段處理

430

glUniform*

 

439

 

V

 

glValidateProgram

根據OpenGL狀態驗證着色器程序

432

glVertex*

定義一個頂點

27

glVertexAttib*

 

456

glVertexPointer

指定了需要訪問的空間座標數據(頂點數組)

44

glViewport

設置視窗

97

 

W

 

glWindowPos

設置當前光柵位置,不必進行矩陣變換

205

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章