PDA

View Full Version : lib3ds show 3d object with texture



revaldo666
07-28-2012, 03:09 AM
Hello all. How load 3ds file with texture in opengl window.
Object i loaded successfull, but i dont know how load texture.
code model load


void display()
{
Gl::glEnable(Gl::GL_DEPTH_TEST);
Gl::glDepthFunc(Gl::GL_LEQUAL);
Gl::glClear(Gl::GL_COLOR_BUFFER_BIT|Gl::GL_DEPTH_B ITS);
Gl::glClearColor(235, 242, 250, 1);
Gl::glLoadIdentity();
lightup();
Gl::glScalef(0.5,0.5,0.5);
Gl::glTranslatef(0.0,-1200.0,-1500.0);
Gl::glRotatef(280, 1, 0, 0);
Gl::glRotatef(rotat, 0, 0, 1);
Gl::glColor3f(50.0,100.0,0.0);
long meshcount;
for(meshcount=0;meshcount<model->meshes->Count;meshcount++)
{
for(int fd=0;fd<mesh[meshcount]->faces->Count;fd++)
face.Add(mesh[meshcount]->faces[fd]);
for(long i=0;i<mesh[meshcount]->nfaces;i++)
{
Gl::glMaterialfv(Gl::GL_FRONT,Gl::GL_DIFFUSE,mater ial[face[i]->material]->diffuse);
Gl::glMaterialfv(Gl::GL_FRONT,Gl::GL_AMBIENT,mater ial[face[i]->material]->ambient);
Gl::glMaterialfv(Gl::GL_FRONT,Gl::GL_SPECULAR,mate rial[face[i]->material]->specular);
// progressBar1->Maximum=mesh[meshcount]->nfaces;
// progressBar1->Value=i;
Gl::glBegin(Gl::GL_TRIANGLES);
Gl::glColor3f(50.0,100.0,0.0);
Gl::glVertex3fv(mesh[meshcount]->vertices[face[i]->index[0]]->ToArray());
Gl::glVertex3fv(mesh[meshcount]->vertices[face[i]->index[1]]->ToArray());
Gl::glVertex3fv(mesh[meshcount]->vertices[face[i]->index[2]]->ToArray());
Gl::glEnd();
Gl::glFlush();
}
face.Clear();
}
}