Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » OpenGL » Vertex Arrays Probleme

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
14.10.2005, 16:41 Uhr
BoBtheREapER
kein job für nen BoB


moinsen
für mein programm in opengl verwende ich vertex arrays, die ich mit malloc und realloc vergrößere, bzw verkleinere. allerdings zeichnet das programm immer nur ein dreieck (nämlich das, das als letztes im array steht) hat jemand erfahrung damit?
--
"Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher." - Albert Einstein
www.blue-xenon.de.vu
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
14.10.2005, 17:20 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


vergessen Vertex-Arrays zu enablen? bzw wie zeichnest du sie
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
15.10.2005, 11:51 Uhr
BoBtheREapER
kein job für nen BoB


Das Array in dem die Vertex Koordinaten gespeichert werden heißt world

float TOpenGLForm::AddTriangle(float x1, float y1, float z1, float x2, float y2, float z2, float x3, float y3, float z3)
{
int position;
if (sizeof(world)>0)
{
position = (sizeof(world)/4)-1;
world = (float *) realloc (world,sizeof(world)+(9*sizeof(float)));
}
else
{
position = 0;
world = (float *) malloc (9*sizeof(float));
}

world[position+0]=x1;
world[position+1]=y1;
world[position+2]=z1;

world[position+3]=x2;
world[position+4]=y2;
world[position+5]=z2;

world[position+6]=x3;
world[position+7]=y3;
world[position+8]=z3;
return *world;
}

//----------------------------------------------------------------------------

world = AddTriangle(0.0f,0.5f,-2.0f,-0.5f,-0.5f,-2.0f,0.5f,-0.5f,-2.0f);
world = AddTriangle(-0.5f,-0.5f,-2.1f,0.5f,-0.5,-2.1f,0.5f,0.0f,-2.1f);

glEnableClientState(GL_VERTEX_ARRAY);

glVertexPointer(3,GL_FLOAT,0,world);

glDrawArrays(GL_TRIANGLES,0,3);
--
"Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher." - Albert Einstein
www.blue-xenon.de.vu
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
17.10.2005, 13:03 Uhr
BoBtheREapER
kein job für nen BoB


ok ich weiß jz woran es lag
glDrawArrays(GL_TRIANGLES,0,3)
zeichent nur ein Dreieck
wenn man die 3 durch ne 6 ersetzt
glDrawArrays(GL_TRIANGLE,0,6)
werden auch 2 Dreiecke gezeichnet (usw.)
--
"Zwei Dinge sind unendlich: Das Universum und die menschliche Dummheit. Aber beim Universum bin ich mir nicht ganz sicher." - Albert Einstein
www.blue-xenon.de.vu

Dieser Post wurde am 17.10.2005 um 13:04 Uhr von BoBtheREapER editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ OpenGL ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: