glValidateProgram

Aus DGL Wiki
Version vom 12. Juli 2004, 19:29 Uhr von Sascha Willems (Diskussion | Beiträge)

(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Wechseln zu: Navigation, Suche

glValidateProgramARB


Name


glValidateProgramARB - Validiert ein Programmobjekt.


Delphi-Spezifikation


procedure glValidateProgramARB(programObj : GLhandleARB);


Parameter


programObj Handle des Programmobjektes das validiert werden soll.


Beschreibung


glValidateProgramARB prüft ob das im Programmobjekt abgelegte, ausführbare Programm entsprechend dem aktuellen OpenGL-Status ausgeführt werden kann. Die Information die durch diesen Validierungsprozess erstellt wird, wird im Informationslog des Programmobjektes abgelegt, und ist entweder leer oder enthält Informationen darüber wie das aktuelle Programmobjekt mit dem Rest des momentanen OpenGL-Status interagiert. Weiterhin steht dort (je nach OpenGL-Implementation) ob, bzw. warum der aktuelle Satz ausführbarer Shader ineffizient, suboptimal oder gar fehlerhaft ist.

Der Status der Vaildierung wird als Teil des Status des Programmobjektes gespeichert und auf True gesetzt, wenn die Validierung erfolgreich war, ansonsten auf False. Abgefragt werden kann dieser via glGetObjectParameterARB, mit den Argumenten programObj und GL_OBJECT_VALIDATE_STATUS_ARB.

Diese Funktion ist im Normalfall nur während der Anwendungsentwicklung nützlich. Ausserdem ist der Informationsstring der im Informationslog abgelegt wird abhängig von der OpenGL-Implementation, so dass je nach Implementation bei gleichen Bedingungen unterschiedliche Ausgaben erfolgen können.


Fehlermeldungen


GL_INVALID_OPERATION wird generiert wenn programObj nicht vom Typ GL_PROGRAM_OBJECT_ARB ist.

GL_INVALID_OPERATION wird generiert wenn glValidateProgramARB zwischen einem glBegin und dem passenden glEnd aufgerufen wird.


Zugehörige Wertrückgaben


glGetInfoLogARB mit dem Argument programObj.

glGetObjectParameterARB mit den Argumenten programObj' und GL_OBJECT_VALIDATE_STATUS_ARB.


Siehe auch


glLinkProgramARB, glUseProgramObjectARB
Hintergrundwissen : Shader
Englische Originalversion (Copyright 3DLabs Inc.)