X-Git-Url: https://git.lukelau.me/?p=opengl.git;a=blobdiff_plain;f=model.hpp;h=e0c8a2d93acd0a4e7fedcd542bcc4a36cb1746a9;hp=a39c70a0651eb8043cd14bbb9ea4e0567bba85d9;hb=8abaf8f77191e1c660def0832d8036a8b4639ba8;hpb=37cba564a96018a5500e942498d4e48c0ebe73ed diff --git a/model.hpp b/model.hpp index a39c70a..e0c8a2d 100644 --- a/model.hpp +++ b/model.hpp @@ -8,6 +8,8 @@ #include #include #include "material.hpp" +#include "program.hpp" +#include "skybox.hpp" class Model { @@ -18,13 +20,13 @@ class Model { }; public: - Model(const std::string &path, GLuint progId); + Model(const std::string &path, Program p, Skybox s); void draw() const; class Node { public: Node(const aiNode &aiNode, GLuint progId); - void draw(const std::vector &meshes, const std::vector &materials, glm::mat4 parentModel) const; + void draw(const std::vector &meshes, const std::vector &materials, const Skybox s, glm::mat4 parentModel) const; const std::vector &getChildren() const { return children; } Node* findNode(const aiNode &aiNode); glm::mat4 model = glm::mat4(1); @@ -40,7 +42,8 @@ class Model { Node* find(const std::string &name); private: - const GLuint progId; + const Program program; + const Skybox skybox; std::vector meshes; Node *root;