127 void Draw(Types::ShaderName shader);
131 std::vector<Mesh> meshes;
132 std::vector<Types::Texture> textures_loaded;
133 std::string directory;
135 void loadModel(std::string path);
136 void processNode(aiNode *node,
const aiScene *scene);
137 Mesh processMesh(aiMesh *mesh,
const aiScene *scene);
138 std::vector<Types::Texture> loadMaterialTextures(aiMaterial *mat,
140 std::string typeName);
150 GLint wrapping = GL_REPEAT;
151 GLint filtering_min = GL_NEAREST;
152 GLint filtering_mag = GL_LINEAR;
153 GLboolean hasMipmap = GL_TRUE;
154 GLint mipmap_min = GL_LINEAR_MIPMAP_LINEAR;
155 GLint mipmap_mag = GL_LINEAR;
159 Builder &set_path(std::string path);
160 Builder &set_wrapping(GLint wrapping);
161 Builder &set_filtering_min(GLint filtering_min);
162 Builder &set_filtering_mag(GLint filtering_mag);
163 Builder &set_hasMipmap(GLboolean hasMipmap);
164 Builder &set_mipmap_min(GLint mipmap_min);
165 Builder &set_mipmap_mag(GLint mipmap_mag);