Freigeben über


glPrioritizeTextures-Funktion

Die glPrioritizeTextures-Funktion legt die Aufenthaltspriorität von Texturen fest.

Syntax

void WINAPI glPrioritizeTextures(
         GLsizei  n,
   const GLuint   *textures,
   const GLclampf *priorities
);

Parameter

n

Die Anzahl der texturen, die priorisiert werden sollen.

Texturen

Ein Zeiger auf das erste Element eines Arrays, das die Namen der zu priorisierenden Texturen enthält.

Prioritäten

Ein Zeiger auf das erste Element eines Arrays, das die Texturprioritäten enthält. Eine Priorität, die in einem Element des Parameters priorities angegeben wird, gilt für die Textur, die durch das entsprechende Element des Parameters textures benannt wird.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Fehlercodes

Die folgenden Fehlercodes können von der glGetError-Funktion abgerufen werden.

Name Bedeutung
GL_INVALID_VALUE
n war ein negativer Wert.
GL_INVALID_OPERATION
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEnd aufgerufen.

Bemerkungen

Die glPrioritizeTextures-Funktion weist die im Parameters priorities angegebenen n Texturprioritäten den n Texturen zu, die im Texturen-Parameter benannt sind. Auf Computern mit einer begrenzten Menge an Texturspeicher richtet OpenGL einen "Arbeitssatz" von Texturen ein, die sich im Texturspeicher befinden. Diese Texturen können wesentlich effizienter an ein Texturziel gebunden werden als Texturen, die nicht resident sind.

Durch Angeben einer Priorität für jede Textur können Sie mit der glPrioritizeTextures-Funktion bestimmen, welche Texturen resident sein sollen.

Die Texturprioritätenelemente in Prioritäten werden vor der Zuweisung an den Bereich [0.0, 1.0] geklemmt. Null gibt die niedrigste Priorität an. Daher sind Texturen mit Priorität 0 am seltensten resident. Der Wert 1,0 gibt die höchste Priorität an; Daher sind Texturen mit priorität 1.0 am ehesten resident. Texturen sind jedoch erst dann ansässig, wenn sie gebunden sind.

Die glPrioritizeTextures-Funktion ignoriert Versuche, Textur 0 zu priorisieren, oder alle Texturnamen, die keiner vorhandenen Textur entsprechen. Keine der vom Texturen-Parameter benannten Funktionen muss an ein Texturziel gebunden werden.

Wenn eine Textur derzeit gebunden ist, können Sie auch die GlTexParameter-Funktion verwenden, um die Priorität festzulegen. Dies ist die einzige Möglichkeit, die Priorität einer Standardtextur festzulegen.

Sie können glPrioritizeTextures in Anzeigelisten einschließen.

Die folgende Funktion ruft die Priorität einer derzeit gebundenen Textur im Zusammenhang mit glPrioritizeTextures ab:

Hinweis

Die glPrioritizeTextures-Funktion ist nur in OpenGL Version 1.1 oder höher verfügbar.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Gl.h
Bibliothek
Opengl32.lib
DLL
Opengl32.dll

Siehe auch

glAreTexturesResident

glBegin

glEnd

glGetTexParameter

glTexImage1D

glTexImage2D

glTexParameter