glAreTexturesResident: Unterschied zwischen den Versionen
DGLBot (Diskussion | Beiträge) K (GlAreTexturesResident wurde nach glAreTexturesResident verschoben) |
K (Kategorisierung ausgebessert) |
||
(4 dazwischenliegende Versionen von 3 Benutzern werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
= glAreTexturesResident = | = glAreTexturesResident = | ||
− | + | ||
+ | |||
== Name == | == Name == | ||
− | '''glAreTexturesResident''' - bestimmt ob sich bestimmte Texturen im [[Texturspeicher]] befinden. | + | '''glAreTexturesResident''' - bestimmt, ob sich bestimmte Texturen im [[Texturspeicher]] befinden. |
+ | |||
+ | |||
− | |||
== Delphi-Spezifikation == | == Delphi-Spezifikation == | ||
function '''glAreTexturesResident'''(''n'': TGLsizei; const ''textures'': PGLuint; ''residences'': PGLboolean): TGLboolean; | function '''glAreTexturesResident'''(''n'': TGLsizei; const ''textures'': PGLuint; ''residences'': PGLboolean): TGLboolean; | ||
− | + | ||
+ | |||
== Parameter == | == Parameter == | ||
{| border="1" rules="all" | {| border="1" rules="all" | ||
− | ! ''n'' | + | ! ''n'' |
| Bestimmt die Anzahl Texturen die abgefragt werden sollen. | | Bestimmt die Anzahl Texturen die abgefragt werden sollen. | ||
|- | |- | ||
− | ! ''textures'' | + | ! ''textures'' |
− | | Ist ein Zeiger auf ein Feld welches die | + | | Ist ein Zeiger auf ein Feld welches die [[OpenGL Name]]n der abzufragenden Texturen enthält. Texturnamen können mit [[glGenTextures]] erzeugt werden. |
− | |||
|- | |- | ||
− | ! ''residences'' | + | ! ''residences'' |
| Ist ein Zeiger auf ein Feld welches den Residence-Status (Anwesenheitsstatus) zurück geliefert wird. Der x-te Status gehört dabei zur x-ten Textur im ''textures'' Feld. | | Ist ein Zeiger auf ein Feld welches den Residence-Status (Anwesenheitsstatus) zurück geliefert wird. Der x-te Status gehört dabei zur x-ten Textur im ''textures'' Feld. | ||
|} | |} | ||
− | |||
− | == Beschreibung == | + | |
+ | == Beschreibung == | ||
Die GL legt einen Satz ("working set") von Texturen an, die im Texturspeicher gehalten werden. Diese Texturen können wesentlich schneller gebunden ([[glBindTexture]]) werden als die nicht residenten Texturen. | Die GL legt einen Satz ("working set") von Texturen an, die im Texturspeicher gehalten werden. Diese Texturen können wesentlich schneller gebunden ([[glBindTexture]]) werden als die nicht residenten Texturen. | ||
− | Die Funktion '''glAreTexturesResident''' fragt den Anwesenheits-Status von den ''n'' Texturen ab, die über ''textures'' angegeben wurden. Wenn alle angegebenen Texturen im Speicher waren, liefert '''glAreTexturesResident''' '''GL_TRUE''' zurück. Der Inhalt von ''residences'' wird dabei nicht verändert. Wenn nicht alle Texturen vorhanden waren liefert '''glAreTexturesResident''' '''GL_FALSE''' zurück. Außerdem werden | + | Die Funktion '''glAreTexturesResident''' fragt den Anwesenheits-Status von den ''n'' Texturen ab, die über ''textures'' angegeben wurden. Wenn alle angegebenen Texturen im Speicher waren, liefert '''glAreTexturesResident''' '''GL_TRUE''' zurück. Der Inhalt von ''residences'' wird dabei nicht verändert. Wenn nicht alle Texturen vorhanden waren liefert '''glAreTexturesResident''' '''GL_FALSE''' zurück. Außerdem werden detailierte Statusinformationen in den n Elementen des Feldes ''residences'' zurückgeliefert. Wenn das x-te Element des Feldes ''residences'' '''GL_TRUE''' ist, bedeutet dies, dass die Textur, mit dem Namen der im x-ten Element des Feldes ''textures'' angegeben wurde, sich im Speicher befindet. |
+ | |||
+ | Der Anwesenheitsstatus einer einzelnen gebundenen Textur kann auch über [[glGetTexParameter]] abgefragt werden. Setzen Sie dazu den ''target''-Parameter auf das Textureziel, an das die Textur gebunden wurde, und den Parameter ''pname'' auf '''GL_TEXTURE_RESIDENT'''. Dies ist die einzige Möglichkeit, den Anwesenheitsstatus einer vorgegeben (Default) Textur abzufragen. | ||
+ | |||
− | |||
− | |||
== Hinweise == | == Hinweise == | ||
'''glAreTexturesResident''' ist erst ab OpenGL Version 1.1 oder später verfügbar. | '''glAreTexturesResident''' ist erst ab OpenGL Version 1.1 oder später verfügbar. | ||
Zeile 43: | Zeile 46: | ||
Einige Implementationen laden Texturen erst bei ihrer ersten Benutzung. | Einige Implementationen laden Texturen erst bei ihrer ersten Benutzung. | ||
− | + | ||
+ | |||
== Fehlermeldungen == | == Fehlermeldungen == | ||
− | '''GL_INVALID_VALUE''' wird generiert wenn ''n'' negativ ist. | + | '''GL_INVALID_VALUE''' wird generiert, wenn ''n'' negativ ist. |
− | '''GL_INVALID_VALUE''' wird generiert wenn irgendein Element in ''textures'' gleich 0 oder kein gültiger Texturname ist. In diesem Fall liefert die Funktion '''GL_FALSE''' und der Inhalt des Feldes ''residence'' ist unbestimmt. | + | |
− | '''GL_INVALID_OPERATION''' wird generiert wenn '''glAreTexturesResident''' innerhalb eines [[glBegin]]-[[glEnd]] Blocks aufgerufen wird. | + | '''GL_INVALID_VALUE''' wird generiert, wenn irgendein Element in ''textures'' gleich 0 oder kein gültiger Texturname ist. In diesem Fall liefert die Funktion '''GL_FALSE''' und der Inhalt des Feldes ''residence'' ist unbestimmt. |
+ | |||
+ | '''GL_INVALID_OPERATION''' wird generiert, wenn '''glAreTexturesResident''' innerhalb eines [[glBegin]]-[[glEnd]]-Blocks aufgerufen wird. | ||
+ | |||
− | |||
== Zugehörige Wertrückgaben == | == Zugehörige Wertrückgaben == | ||
[[glGetTexParameter]] mit Token '''GL_TEXTURE_RESIDENT''' liefert den Anwesenheitsstatus der momentan gebundenen Textur. | [[glGetTexParameter]] mit Token '''GL_TEXTURE_RESIDENT''' liefert den Anwesenheitsstatus der momentan gebundenen Textur. | ||
− | + | ||
== Siehe auch == | == Siehe auch == | ||
− | [[glBindTexture]], [[glGetTexParameter]], [[glPrioritizeTextures]], [[glTexImage1D]], [[glTexImage2D]], [[ | + | [[glBindTexture]], [[glGetTexParameter]], [[glPrioritizeTextures]], [[glTexImage1D]], [[glTexImage2D]], [[glTexImage3D]], [[glTexParameter]] |
[[Kategorie:GL|AreTexturesResident]] | [[Kategorie:GL|AreTexturesResident]] | ||
+ | [[Kategorie:GL1.1|AreTexturesResident]] |
Aktuelle Version vom 20. September 2010, 01:29 Uhr
Inhaltsverzeichnis
glAreTexturesResident
Name
glAreTexturesResident - bestimmt, ob sich bestimmte Texturen im Texturspeicher befinden.
Delphi-Spezifikation
function glAreTexturesResident(n: TGLsizei; const textures: PGLuint; residences: PGLboolean): TGLboolean;
Parameter
n | Bestimmt die Anzahl Texturen die abgefragt werden sollen. |
---|---|
textures | Ist ein Zeiger auf ein Feld welches die OpenGL Namen der abzufragenden Texturen enthält. Texturnamen können mit glGenTextures erzeugt werden. |
residences | Ist ein Zeiger auf ein Feld welches den Residence-Status (Anwesenheitsstatus) zurück geliefert wird. Der x-te Status gehört dabei zur x-ten Textur im textures Feld. |
Beschreibung
Die GL legt einen Satz ("working set") von Texturen an, die im Texturspeicher gehalten werden. Diese Texturen können wesentlich schneller gebunden (glBindTexture) werden als die nicht residenten Texturen.
Die Funktion glAreTexturesResident fragt den Anwesenheits-Status von den n Texturen ab, die über textures angegeben wurden. Wenn alle angegebenen Texturen im Speicher waren, liefert glAreTexturesResident GL_TRUE zurück. Der Inhalt von residences wird dabei nicht verändert. Wenn nicht alle Texturen vorhanden waren liefert glAreTexturesResident GL_FALSE zurück. Außerdem werden detailierte Statusinformationen in den n Elementen des Feldes residences zurückgeliefert. Wenn das x-te Element des Feldes residences GL_TRUE ist, bedeutet dies, dass die Textur, mit dem Namen der im x-ten Element des Feldes textures angegeben wurde, sich im Speicher befindet.
Der Anwesenheitsstatus einer einzelnen gebundenen Textur kann auch über glGetTexParameter abgefragt werden. Setzen Sie dazu den target-Parameter auf das Textureziel, an das die Textur gebunden wurde, und den Parameter pname auf GL_TEXTURE_RESIDENT. Dies ist die einzige Möglichkeit, den Anwesenheitsstatus einer vorgegeben (Default) Textur abzufragen.
Hinweise
glAreTexturesResident ist erst ab OpenGL Version 1.1 oder später verfügbar.
glAreTexturesResident liefert den Anwesenheits-Status der Texturen zum Zeitpunkt des Aufrufs. Es gibt keine Garantie dafür, dass die Textur zu einem anderen Zeitpunkt noch resident ist.
Wenn Texturen im virtuellen Speicher abgelegt werden (d.h. es gibt keinen Texturspeicher), gelten Sie immer als resident.
Einige Implementationen laden Texturen erst bei ihrer ersten Benutzung.
Fehlermeldungen
GL_INVALID_VALUE wird generiert, wenn n negativ ist.
GL_INVALID_VALUE wird generiert, wenn irgendein Element in textures gleich 0 oder kein gültiger Texturname ist. In diesem Fall liefert die Funktion GL_FALSE und der Inhalt des Feldes residence ist unbestimmt.
GL_INVALID_OPERATION wird generiert, wenn glAreTexturesResident innerhalb eines glBegin-glEnd-Blocks aufgerufen wird.
Zugehörige Wertrückgaben
glGetTexParameter mit Token GL_TEXTURE_RESIDENT liefert den Anwesenheitsstatus der momentan gebundenen Textur.
Siehe auch
glBindTexture, glGetTexParameter, glPrioritizeTextures, glTexImage1D, glTexImage2D, glTexImage3D, glTexParameter