Bonjour !
voila,
J'ai (enfin) réussi à afficher mon objet via les VBO ! Youpi.
Je souhaite maintenant y appliquer de la couleur.
J'ai fais ce bout de code:
avec:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 VBOid1 = GL.GenBuffer(); GL.BindBuffer(BufferTarget.ArrayBuffer, VBOid1); GL.BufferData(BufferTarget.ArrayBuffer, countc + countv, new IntPtr(0), BufferUsageHint.StaticDraw); GL.BufferSubData(BufferTarget.ArrayBuffer, new IntPtr(0), countv, xyz); GL.BufferSubData(BufferTarget.ArrayBuffer, new IntPtr(countv), countc, xyzcolor); GL.BindBuffer(BufferTarget.ArrayBuffer, 0);
countc: taille du buffer de vectices
countv: taille du buffer de couleurs (avec pour chaque vectice: rgba))
xyz = buffer de vectices
xyzcolor= buffer de couleurs
Ensuite pour afficher:
L'object s'affiche bien sans probleme, mais pas aux couleurs souhaitées....
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 GL.EnableVertexAttribArray(0); GL.EnableVertexAttribArray(1); GL.BindBuffer(BufferTarget.ArrayBuffer, VBOid1 ); GL.VertexAttribPointer(0, 3, VertexAttribPointerType.Float, false, 0, 0); GL.VertexAttribPointer(1, 4, VertexAttribPointerType.Float, false, 0, countv); GL.DrawArrays(BeginMode.Lines, 0, (xyz.Length / 3) + (xyzcolor.Length / 4)); GL.BindBuffer(BufferTarget.ArrayBuffer, 0);
Avez vous une idée d'ou ca peut venir ?
Merci.
Partager