Hallo,
es ist das erste Mal, dass ich versuche im non-intermediate mode zu zeichnen.
Als Objekt habe ich ein Icosahedron (red bible) gewählt, 20 Dreiecke.
Ich bekomme keine Fehlermeldung, es erscheint aber nichts auf dem Schirm.
Alles anzeigen
Die Daten in _pointerData habe ich ausgelesen, die stimmen, z.B. erstes Dreieck:
0.525731 0.000000 0.850651
0.525731 0.000000 0.850651
0.000000 0.850651 0.525731
0.000000 0.850651 0.525731
-0.525731 0.000000 0.850651
-0.525731 0.000000 0.850651
Beim Icosahedron sind Position und Normale identisch.
Help me in my weakness (Dylan)
Uwe
es ist das erste Mal, dass ich versuche im non-intermediate mode zu zeichnen.
Als Objekt habe ich ein Icosahedron (red bible) gewählt, 20 Dreiecke.
Ich bekomme keine Fehlermeldung, es erscheint aber nichts auf dem Schirm.
Quellcode
-
- -(void)drawPointerForIndex:(unsigned)idx display:(unsigned)display
- {
- GLuint buffer = 0;
- switch (display)
- {
- case 0: // curvePointer
- buffer = vboBuffers[idx];
- break;
- case 1: // velocityPointer
- buffer = vboBuffers[idx + 1];
- break;
- case 2: // vectorPointer
- buffer = vboBuffers[idx + 2];
- break;
- }
- // icosahedron byte length = 20 * 3 * 6 * sizeof(float) = 1440
- glBindBuffer(GL_ARRAY_BUFFER, buffer); // buffer = 1
- glInterleavedArrays(GL_N3F_V3F, 0, [_pointerData bytes]);
- glBufferData(GL_ARRAY_BUFFER,[_pointerData length], [_pointerData bytes], GL_STATIC_DRAW);
- glPushMatrix();
- glColor3fv(pointerColor);
- // glTranslatef() kommt später dazu;
- glDrawArrays(GL_TRIANGLES, 0, _pointerVertexCount); // _pointerVertexCount = 60
- glPopMatrix();
- }
Die Daten in _pointerData habe ich ausgelesen, die stimmen, z.B. erstes Dreieck:
0.525731 0.000000 0.850651
0.525731 0.000000 0.850651
0.000000 0.850651 0.525731
0.000000 0.850651 0.525731
-0.525731 0.000000 0.850651
-0.525731 0.000000 0.850651
Beim Icosahedron sind Position und Normale identisch.
Help me in my weakness (Dylan)
Uwe
How come I can't see me in my mirror ?