Gambas Documentation
Aperçu du Langage
À traduire
Code Snippets
Comment faire ...
Compilation et installation
Composants
gb
gb.args
gb.cairo
gb.clipper
gb.complex
gb.compress
gb.crypt
gb.db
gb.db.form
gb.dbus
gb.debug
gb.desktop
gb.desktop.gnome.keyring
gb.eval
gb.eval.highlight
gb.form
gb.form.dialog
gb.form.editor
gb.form.mdi
gb.gmp
gb.gsl
gb.gtk
gb.gtk3
gb.gui
gb.image
gb.image.effect
gb.image.imlib
gb.image.io
gb.inotify
gb.libxml
gb.media
gb.mysql
gb.net
gb.net.curl
gb.net.smtp
gb.openal
gb.opengl
gb.opengl.glsl
Gl
AttachShader
CompileShader
CreateProgram
CreateShader
DeleteProgram
DeleteShader
DetachShader
GetAttachedShaders
GetProgramInfoLog
GetProgramiv
GetShaderInfoLog
GetShaderiv
GetShaderSource
IsProgram
IsShader
LinkProgram
ShaderSource
Uniform1f
Uniform1fv
Uniform1i
Uniform1iv
Uniform2f
Uniform2fv
Uniform2i
Uniform2iv
Uniform3f
Uniform3fv
Uniform3i
Uniform3iv
Uniform4f
Uniform4fv
Uniform4i
Uniform4iv
UniformMatrix2fv
UniformMatrix2x3fv
UniformMatrix2x4fv
UniformMatrix3fv
UniformMatrix3x2fv
UniformMatrix3x4fv
UniformMatrix4fv
UniformMatrix4x2fv
UniformMatrix4x3fv
UseProgram
ValidateProgram
VertexAttrib1f
VertexAttrib1fv
VertexAttrib2f
VertexAttrib2fv
VertexAttrib3f
VertexAttrib3fv
VertexAttrib4f
VertexAttrib4fv
gb.opengl.glu
gb.opengl.sge
gb.option
gb.pcre
gb.pdf
gb.qt4
gb.qt4.ext
gb.qt4.opengl
gb.qt4.webkit
gb.qt5
gb.qt5.opengl
gb.report
gb.scanner
gb.sdl
gb.sdl.sound
gb.settings
gb.signal
gb.util
gb.util.web
gb.v4l
gb.vb
gb.web
gb.web.feed
gb.xml
gb.xml.html
gb.xml.rpc
gb.xml.xslt
Controls pictures
Derniers changements
Dépôt d'applications
Documentation de l'Environnement de développement
Documentation des développeurs
Documents
Indenter
Index de tous les Documents
Index du langage
Lexique
LISEZ-MOI
Manuel du wiki
Messages d'erreur
Tutoriels
Wiki License

Gl.ValidateProgram (gb.opengl.glsl)

Static Sub ValidateProgram ( Program As Integer )

Valide un programme objet

Parametres

  • Program Spécifie le gestionnaire d’un programme objet à valider.

Description

Gl.ValidateProgram vérifie que les executables contenus dans Program peuvent être exécutés selon l’état OpenGL courant. Les informations générées par le processus de validation seront enregistrées dans le log d’information du programme. Les informations de validation peuvent être constituées d’une chaîne vide, ou d’une chaîne contenant les informations sur la manière dont le programme objet en cours interagit avec le reste de l’état OpenGL en cours. Ceci fournit aux développeurs OpenGL un moyen de transmettre plus d’informations explicitant pourquoi le programme en cours est inefficace, non optimal, en défaut d’exécution, etc.

L’état de l’opération de validation sera enregistré en tant que partie de l’état du programme objet . Cette valeur sera positionnée à TRUE si la validation réussit, et FALSE dans le cas contraire. Il peut être interrogé par appel à Gl.GetProgram avec les arguments Program et Gl.GL_VALIDATE_STATUS. Si la validation réussit, l’exécution du programme est garantie pour l’état courant. Dans le cas contraire, l’exécution du programme est garantie de ne pas réussir.

Cette fonction n’est typiquement utile que lors du développement d’application. C’est pourquoi la chaîne d’information enregistrée dans le log d’information est entièrement dépendante de l’implémentation ; une application ne peut s’attendre à ce que différentes implémentations OpenGL produise des chaînes d’ information identiques.

Gl.ValidateProgram n’est disponible que pour des versions GL 2.0 ou supérieurs.

Cette fonction mime l’opération de validation que les implémentations OpenGL doivent réaliser lorsque le rendu de commandes est émis alors que les ombrages programmables font partie de l’état courant. L’erreur Gl.GL_INVALID_OPERATION sera générée par Gl.Begin, Gl.RasterPos, ou toute commande qui produit un appel implicite à Gl.Begin si :

  • dans le programme objet en cours, deux quelconques échantillonneurs actifs sont de types différents, mais se réfèrent à la même unité de texture d’image

  • un quelconque échantillonneur actif dans le programme objet en cours se réfère à une unité de texture d’image où les fonctions fixes du processus de fragment accède à une cible de texture qui ne correspond pas au type d’échantillonneur, ou

  • La somme des nombres d’échantillonneurs actifs dans le programme et le nombre d’unités de texture d’image autorisées pour le fonctions fixes du processus de fragments dépasse la limite du nombre total combiné d’unités de texture d’image autorisées.

Gérer ces erreurs lorsque les commandes de rendu sont émises peut être difficile ou entraîner une dégradation de performance pour les applications. C’est pourquoi les applications sont informées de la necessité de faire des appels à Gl.ValidateProgram pour détecter ces questions au stade du développement .

Erreurs

_ Gets Associés

Voir aussi