[C++] OpenGL Vertex array geen kleur

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • BartBlackMagic
  • Registratie: December 2003
  • Laatst online: 02-07 11:19
Ik heb twee arrays, een met vertices (floats), een met kleuren (floats)
Tijdens het initaliseren van OpenGL gebeurt dit:
C++:
1
2
3
4
5
glEnableClientState(GL_VERTEX_ARRAY);
glEnableClientState(GL_COLOR_ARRAY);

glVertexPointer(3, GL_FLOAT, 0, vertices);
glColorPointer(3, GL_FLOAT, 0, colors);


In de OpenGL loop gebeurt het volgende:
C++:
1
2
3
4
5
6
7
8
9
10
11
12
13
glClearColor(1.0f, 1.0f, 1.0f, 0.0f);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
glLoadIdentity();

gluLookAt(cam->PosVect()->X(), cam->PosVect()->Y(), cam->PosVect()->Z(),
                              cam->ViewVect()->X(), cam->ViewVect()->Y(), cam->ViewVect()->Z(),
                              cam->UpVect()->X(), cam->UpVect()->Y(), cam->UpVect()->Z());
glPushMatrix();
glDrawArrays (GL_POINTS, 0, numberOfVertices);
glPopMatrix();

glFlush();
swapBuffers();

Alle pixels zijn helaas zwart. Als ik gewoon over de vertices loop en voor iedere vertex een kleur toeken uit de "colors" array, lukt het wel.
Iemand een idee?

@CodeCaster: jop, die roep 'k aan...
edit: in dit simpel voorbeeld werken de kleuren wel met behulp van vertex arrays

[ Voor 35% gewijzigd door BartBlackMagic op 06-06-2011 20:17 ]


Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Ik zie je geen licht maken. Staat lighting wel uit?

[ Voor 130% gewijzigd door CodeCaster op 06-06-2011 20:18 . Reden: Stiekem editen hè :( ]

https://oneerlijkewoz.nl
Het ergste moet nog komen / Het leven is een straf / Een uitgestrekte kwelling van de wieg tot aan het graf


Acties:
  • 0 Henk 'm!

  • BartBlackMagic
  • Registratie: December 2003
  • Laatst online: 02-07 11:19
CodeCaster schreef op maandag 06 juni 2011 @ 20:12:
Ik zie je geen licht maken. Staat lighting wel uit?
:D dat was het dus! Thx! Zou je heel kort kunnen uitleggen waarom je eerst lighting moet uitzetten? (staat namelijk niet in het redbook bij glDrawArrays of een ander gebruikte functie)

[ Voor 13% gewijzigd door BartBlackMagic op 06-06-2011 20:23 ]


Acties:
  • 0 Henk 'm!

  • CodeCaster
  • Registratie: Juni 2003
  • Niet online

CodeCaster

Can I get uhm...

Eerste hit op [google=opengl lighting]: http://www.sjbaker.org/steve/omniv/opengl_lighting.html :P Kortom, als je lighting niet uitzet moet je zelf licht maken (ambient, point enzovoorts).

[ Voor 31% gewijzigd door CodeCaster op 06-06-2011 20:26 ]

https://oneerlijkewoz.nl
Het ergste moet nog komen / Het leven is een straf / Een uitgestrekte kwelling van de wieg tot aan het graf