共用方式為


glBindTexture 函式

glBindTexture函式可讓您建立系結至紋理目標的具名紋理。

語法

void WINAPI glBindTexture(
   GLenum target,
   GLuint texture
);

參數

目標

紋理所系結的目標。 必須具有值GL_TEXTURE_1D或GL_TEXTURE_2D。

紋理

紋理的名稱;紋理名稱目前無法使用。

傳回值

此函式不會傳回值。

錯誤碼

glGetError函式可以擷取下列錯誤碼。

名稱 意義
GL_INVALID_ENUM
參數 目標 不是可接受的值。
GL_INVALID_OPERATION
參數 紋理 沒有與 目標相同的維度,或是呼叫 glBegin對應呼叫 glEnd之間的函式。

備註

glBindTexture函式可讓您建立具名紋理。 呼叫目標設為 GL_TEXTURE_1D或 GL_TEXTURE_2D 的glBindTexture,並將紋理設定為您建立的新紋理名稱,會將紋理名稱系結至適當的紋理目標。 當紋理系結至目標時,該目標的上一個系結不再生效。

紋理名稱是不帶正負號的整數,其值為零,用來代表每個紋理目標的預設紋理。 紋理名稱和對應的紋理內容是目前 OpenGL 轉譯內容的共用顯示清單空間的本機位置;只有在兩個轉譯內容也會共用顯示清單時,才會共用紋理名稱。 您可以使用 glGenTextures產生一組新的紋理名稱。

第一次系結紋理時,它會假設其紋理目標的維度;系結至GL_TEXTURE_1D的紋理會變成一維,而系結至GL_TEXTURE_2D的紋理會變成二維。 您在紋理目標上執行的作業也會影響系結至目標的紋理。 當您查詢紋理目標時,傳回值是系結至紋理的狀態。 紋理目標會成為目前系結至紋理的別名。

當您使用 glBindTexture系結紋理時,系結會保持作用中狀態,直到不同的紋理系結至相同的目標,或使用 glDeleteTextures 函式刪除系結紋理。 建立具名紋理之後,您可以將它系結至具有相同維度的紋理目標,視需要一樣頻繁。

使用 glBindTexture 將現有的具名紋理系結至其中一個紋理目標的速度通常比使用 glTexImage1DglTexImage2D重載紋理影像更快。 若要進一步控制紋理效能,請使用 glPrioritizeTextures

您可以在顯示清單中包含 glBindTexture 的呼叫。

注意

glBindTexture函式僅適用于 OpenGL 1.1 版或更新版本。

下列函式會擷 取與 glBindTexture相關的資訊:

  • glGet with argument GL_TEXTURE_1D_BINDING

glGet with argument GL_TEXTURE_2D_BINDING

規格需求

需求
最低支援的用戶端
Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器
Windows 2000 Server [僅限桌面應用程式]
標頭
Gl.h
程式庫
Opengl32.lib
DLL
Opengl32.dll

另請參閱

glAreTexturesResident

glDeleteTextures

glGenTextures

glGet

glGetTexParameter

glIsTexture

glPrioritizeTextures

glTexImage1D

glTexImage2D

glTexParameter