Buenas, tengo este codigo y me da mil errores, llevo una semana peleando con el y nada, tambien decir que es mi primer proyecto en OpenGL...
#include "3ds.h"
#include <iostream>
#include <glut.h>
#include <stdlib.h>
#include <windows.h>
using namespace std;
void Display (void)
{
glClearColor(0.0,0.0,0.0,0.0);
// Color de fondo
glClear(GL_COLOR_BUFFER_BIT);
}
// parse a 3DS file
Scene3DS *scene = new Scene3DS( "Beast.3ds" );
// reading the meshes
vector<Mesh3DSObject> meshes = scene->Meshes();
// reading the vertices
// (assuming there's at least one mesh in scene)
vector<Mesh3DSVertex> vertices = meshes[0].Vertices();
cout << "\nv[0] = (" << vertices[0].x << ","
<< vertices[0].y << ","
<< vertices[0].z << ")" << endl;
// reading the faces
vector<Mesh3DSFace> faces = meshes[0].Faces();
// 3ds files store faces as having 3 indexs in vertex arrays
Mesh3DSFace first_face = faces[0];
// first vertex of first_face
Mesh3DSVertex a = vertices[first_face.a];
Mesh3DSVertex b = vertices[first_face.b];
Mesh3DSVertex c = vertices[first_face.c];
// reading texture coordinates
vector<Mesh3DSTextureCoord> texcoords = meshes[0].TextureCoords();
cout << "t[0] = (" << texcoords[0].u << ","
<< texcoords[0].v << ")" << endl;
// reading materials
// (each position in the map contains the material/texture name (->first)
// and the associated faces (->second))
map<string, vector<int> > materials = meshes[0].Materials();
cout << "m[0] = " << materials.begin()->first << ", f" << materials.begin()->second[0] << endl;
delete scene;
glBegin(GL_TRIANGLES);
glEnd();
// Acabem de dibuixar
glFlush();
// Forcem el dibuixat
}
void Reshape(int x, int y)
{
}
void KeyDown(unsigned char key, int x, int y)
{
}
void Idle(void)
{
Display();
}
int main (int argc, char **argv)
{
glutInit(&argc, argv);//Inciamos la libreria Glut
glutInitDisplayMode(GLUT_RGB);//Configura el modo de video incial
glutInitWindowPosition(150,130);//Situa la ventana respecto a la pantalla
glutInitWindowSize(1000,600);//Marca la medida de la pantalla
glutCreateWindow("Cargador de escenas");
//Ponemos nombre a la nueva ventana
//Indicamos a Glut que la rutina empleada como Display se llamara Display
//Se ejecuta una vez por ciclo de programa y realiza todas las operaciones grficas.
glutDisplayFunc(Display);
//Igual que el caso anterior pero se ejecuta cada vez que cambia la medida de la ventana
// y la primera vez que se ejecuta la aplicacion
glutReshapeFunc(Reshape);
//como en los dos casos anteriores es la función de I/O, se ejecuta cada vez que hay una entrada de datos por
//teclado y es la encargada de manejar e interpretar esta entrada.
glutKeyboardFunc(KeyDown);
//Igual que los casos anteriores, idle se ejecuta una vez por ciclo de programa
//y se encarga de almacenar el codigo de manejo de variables de la aplicación
glutIdleFunc(Idle);
glutMainLoop();
//Con esta instrucción el programa se ejecutara en un ciclo constante del cual solo saldra al
return 0;
}
--------------------------------------
Y me da los siguientes errores:
\Users\Jana\Desktop\OpenGl\main.cpp
C:\Users\Jana\Desktop\OpenGl\C glut.h: No such file or directory.
C:\Users\Jana\Desktop\OpenGl\main.cpp
In function `void Display()':
12 C:\Users\Jana\Desktop\OpenGl\main.cpp
'glClearColor' undeclared (first use this function)
(Each undeclared identifier is reported only once for each function it appears in.)
14 C:\Users\Jana\Desktop\OpenGl\main.cpp
`GL_COLOR_BUFFER_BIT' undeclared (first use this function)
14 C:\Users\Jana\Desktop\OpenGl\main.cpp
`glClear' undeclared (first use this function)
14 C:\Users\Jana\Desktop\OpenGl\main.cpp
At global scope:
28 C:\Users\Jana\Desktop\OpenGl\main.cpp
expected constructor, destructor, or type conversion before '<<' token
28 C:\Users\Jana\Desktop\OpenGl\main.cpp
expected `,' or `;' before '<<' token
46 C:\Users\Jana\Desktop\OpenGl\main.cpp
expected constructor, destructor, or type conversion before '<<' token
46 C:\Users\Jana\Desktop\OpenGl\main.cpp
expected `,' or `;' before '<<' token
55 C:\Users\Jana\Desktop\OpenGl\main.cpp
expected constructor, destructor, or type conversion before '<<' token
55 C:\Users\Jana\Desktop\OpenGl\main.cpp
expected `,' or `;' before '<<' token
57 C:\Users\Jana\Desktop\OpenGl\main.cpp
expected unqualified-id before "delete"
57 C:\Users\Jana\Desktop\OpenGl\main.cpp
expected `,' or `;' before "delete"
59 C:\Users\Jana\Desktop\OpenGl\main.cpp
expected constructor, destructor, or type conversion before '(' token
59 C:\Users\Jana\Desktop\OpenGl\main.cpp
expected `,' or `;' before '(' token
62 C:\Users\Jana\Desktop\OpenGl\main.cpp
expected constructor, destructor, or type conversion before ';' token
64 C:\Users\Jana\Desktop\OpenGl\main.cpp
expected constructor, destructor, or type conversion before ';' token
66 C:\Users\Jana\Desktop\OpenGl\main.cpp
expected declaration before '}' token
------------------------
Supongo que seran tonterias, pero despues de tantos dias peleandome con ello, no veo nada...