Modele3D.h 881 B

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #ifndef MODELE3D_H
  2. #define MODELE3D_H
  3. // Macro utile au VBO
  4. #ifndef BUFFER_OFFSET
  5. #define BUFFER_OFFSET(offset) ((char*)NULL + (offset))
  6. #endif
  7. #include <iostream>
  8. #include <vector>
  9. #include <fstream>
  10. #include "../Shader.h"
  11. #include "../Texture.h"
  12. // Includes GLM
  13. #include <glm/glm.hpp>
  14. #include <glm/gtx/transform.hpp>
  15. #include <glm/gtc/type_ptr.hpp>
  16. class Modele3D
  17. {
  18. public:
  19. Modele3D();
  20. virtual ~Modele3D();
  21. void afficher(glm::mat4 pmv, glm::mat4 m, Shader* const shad);
  22. protected:
  23. GLuint m_textID;
  24. GLuint m_nbVec;
  25. float *m_vertices; // Tableau
  26. float *m_coordTexture; // Tableau
  27. float *m_normales; // Tableau
  28. GLuint m_vboID;
  29. int m_tailleVerticesBytes;
  30. int m_tailleCoordTextureBytes;
  31. int m_tailleNormalesBytes;
  32. GLuint m_vaoID;
  33. };
  34. #endif // MODELE3D_H