dawny

06-13-2004, 09:04 PM

hi all

i just converted a 3ds modell with polytrans programm to opengl c code and included that code in my c++ programm.

polytrans gives me these lines

static GLfloat VertexData[] = {

-5.38886f, 21.7058f, 5.32406f, -2.77164f, 21.2494f, 8.29626f, -0.782901f, 20.9396f, 8.68122f, .......

static GLfloat NormalData[] = {

-0.513389f, -0.786477f, 0.343345f, -0.336265f, -0.937733f, 0.0870818f, -0.150752f, -0.988496f, 0.0122153f, .....

static GLint Indices[] = {

1136, 1123, 1136, 1122, 1128, 1122, 1130, 1120, 1130, 1134, 1135, 1132, 1133, 1064, 1131, 1065,

1131, 1059, 1141, 1144, 1141, 1143, 1141, 1142, 1126, 990, 1126, 992, 1126, 1127, 1144, 1163, ....

glEnableClientState(GL_NORMAL_ARRAY);

glNormalPointer(GL_FLOAT, 0, NormalData);

glEnableClientState(GL_VERTEX_ARRAY);

glVertexPointer(3, GL_FLOAT, 0, VertexData);

glColor3f(1.00000f, 0.811881f, 0.707913f);

glDrawElements(GL_TRIANGLE_STRIP, 18, GL_UNSIGNED_INT, &Indices[0]);

glDrawElements(GL_TRIANGLE_STRIP, 6, GL_UNSIGNED_INT, &Indices[18]);

glDrawElements(GL_TRIANGLE_STRIP, 6, GL_UNSIGNED_INT, &Indices[24]);

glDrawElements(GL_TRIANGLE_STRIP, 8, GL_UNSIGNED_INT, &Indices[30]);

glDrawElements(GL_TRIANGLE_STRIP, 6, GL_UNSIGNED_INT, &Indices[38]);

glDrawElements(GL_TRIANGLE_STRIP, 6, GL_UNSIGNED_INT, &Indices[44]);

glDrawElements(GL_TRIANGLE_STRIP, 7, GL_UNSIGNED_INT, &Indices[50]);

glDrawElements(GL_TRIANGLE_STRIP, 6, GL_UNSIGNED_INT, &Indices[57]);....

to draw the model.

my question:

if i pick one random vertices, how can i get the adjacent vertices to the one i picked?

is that even possible or must the indices_array structured in a diffrent way?

do you know any other good programms which export 3d models in open c code with more options?

many thx for your help :)

i just converted a 3ds modell with polytrans programm to opengl c code and included that code in my c++ programm.

polytrans gives me these lines

static GLfloat VertexData[] = {

-5.38886f, 21.7058f, 5.32406f, -2.77164f, 21.2494f, 8.29626f, -0.782901f, 20.9396f, 8.68122f, .......

static GLfloat NormalData[] = {

-0.513389f, -0.786477f, 0.343345f, -0.336265f, -0.937733f, 0.0870818f, -0.150752f, -0.988496f, 0.0122153f, .....

static GLint Indices[] = {

1136, 1123, 1136, 1122, 1128, 1122, 1130, 1120, 1130, 1134, 1135, 1132, 1133, 1064, 1131, 1065,

1131, 1059, 1141, 1144, 1141, 1143, 1141, 1142, 1126, 990, 1126, 992, 1126, 1127, 1144, 1163, ....

glEnableClientState(GL_NORMAL_ARRAY);

glNormalPointer(GL_FLOAT, 0, NormalData);

glEnableClientState(GL_VERTEX_ARRAY);

glVertexPointer(3, GL_FLOAT, 0, VertexData);

glColor3f(1.00000f, 0.811881f, 0.707913f);

glDrawElements(GL_TRIANGLE_STRIP, 18, GL_UNSIGNED_INT, &Indices[0]);

glDrawElements(GL_TRIANGLE_STRIP, 6, GL_UNSIGNED_INT, &Indices[18]);

glDrawElements(GL_TRIANGLE_STRIP, 6, GL_UNSIGNED_INT, &Indices[24]);

glDrawElements(GL_TRIANGLE_STRIP, 8, GL_UNSIGNED_INT, &Indices[30]);

glDrawElements(GL_TRIANGLE_STRIP, 6, GL_UNSIGNED_INT, &Indices[38]);

glDrawElements(GL_TRIANGLE_STRIP, 6, GL_UNSIGNED_INT, &Indices[44]);

glDrawElements(GL_TRIANGLE_STRIP, 7, GL_UNSIGNED_INT, &Indices[50]);

glDrawElements(GL_TRIANGLE_STRIP, 6, GL_UNSIGNED_INT, &Indices[57]);....

to draw the model.

my question:

if i pick one random vertices, how can i get the adjacent vertices to the one i picked?

is that even possible or must the indices_array structured in a diffrent way?

do you know any other good programms which export 3d models in open c code with more options?

many thx for your help :)