41 std::vector<std::string> names;
42 std::vector<MaterialData> data;
48 std::vector<vec3> positions;
49 std::vector<vec2> texcoords;
50 std::vector<vec3> normals;
52 std::vector<int> position_indices;
53 std::vector<int> texcoord_indices;
54 std::vector<int> normal_indices;
56 std::vector<MaterialData> materials;
57 std::vector<int> material_indices;
66 std::string
pathname(
const std::string& filename );
Color Black()
utilitaire. renvoie une couleur noire.
MaterialDataLib read_material_data(const char *filename)
charge un ensemble de matieres texturees.
std::string pathname(const std::string &filename)
void normals(MeshData &data)
(re-) calcule les normales des sommets. utiliser avant les reindexations, cf indices() et vertices().
MeshData read_mesh_data(const char *filename)
charge un fichier wavefront .obj et renvoie les donnees.
MeshData vertices(MeshData &data)
construit les sommets. prepare l'affichage openGL, avec glDrawArrays().
void bounds(const MeshData &data, Point &pmin, Point &pmax)
renvoie l'englobant.
ensemble de matieres texturees.
representation d'une couleur (rgba) transparente ou opaque.
representation d'une matiere texturee.
Color specular
couleur du reflet
Color emission
pour une source de lumiere
GLuint diffuse_texture
texture diffuse
std::string diffuse_filename
nom de la texture diffuse
float ns
exposant pour les reflets blinn-phong
GLuint ns_texture
texture exposant
Color diffuse
couleur diffuse
std::string ns_filename
nom de la texture exposant
Color diffuse_texture_color
couleur moyenne de la texture
representation d'un point 3d.