30 lines
569 B
C++
Executable File
30 lines
569 B
C++
Executable File
#pragma once
|
|
|
|
#include <glm/glm.hpp>
|
|
|
|
#include <GLES2/gl2.h>
|
|
|
|
#include <vector>
|
|
|
|
using namespace std; //for vector
|
|
using namespace glm; //vec3 and friends
|
|
|
|
class Model3D {
|
|
|
|
private:
|
|
int nVertices;
|
|
GLuint vao;
|
|
vec3 boundingBoxLBN;
|
|
vec3 boundingBoxRTF;
|
|
vector<vec3> loadVertexData(const char* modelPath, bool smoothNormals);
|
|
void computeBoundingBox(vector<vec3> points);
|
|
|
|
public:
|
|
Model3D(const char* modelPath, bool smoothNormals);
|
|
GLuint getVAO();
|
|
int getTrisCount();
|
|
void draw();
|
|
vec3 getLBN();
|
|
vec3 getRTF();
|
|
};
|