Salut,
j'ai un problème de libération de texture. Voici le code que j'utilise :
Texture est une classe maison et getId() retourne l'identifiant OGL.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 @Override public void deleteTexture(Texture texture) { this.gl.glDeleteTextures(1, new int[]{texture.getId()}, 0); }
Cette identifiant est le bon car je l'utilise pour le bind et le tracé fonctionne :
Le problème est que j'ai beau utiliser la méthode deleteTexture(Texture texture), les sprites utilisant la dite texture sont toujours texturés.
Code : Sélectionner tout - Visualiser dans une fenêtre à part this.gl.glBindTexture(GL.GL_TEXTURE_2D, sprite.getCurrentFrame().getTextureId());
Il ne devraient plus l'être non ? Et au passage j'imagine qu'il devrait y avoir une erreur OGL ?
Quelqu'un aurait-il une idée sur la question ?
Au passage, quelqu'un sait-il comment afficher les erreurs OpenGL ?
Voici la def du bind JOGL :
Merci d'avanceglDeleteTextures
void glDeleteTextures(int n,
int[] textures,
int textures_offset)
Interface to C language function:
void glDeleteTextures(GLsizei n, const GLuint * textures);![]()
Partager