2014-10-20 17:09:19 +00:00
|
|
|
#ifndef OBJECT_HH_INCLUDED
|
|
|
|
#define OBJECT_HH_INCLUDED
|
|
|
|
|
|
|
|
#include "entity.hh"
|
|
|
|
#include "model.hh"
|
2014-11-08 00:17:23 +00:00
|
|
|
#include "material.hh"
|
2014-10-22 22:13:09 +00:00
|
|
|
#include <string>
|
2014-10-20 17:09:19 +00:00
|
|
|
#include <ACGL/Math/Math.hh>
|
2014-10-22 22:13:09 +00:00
|
|
|
#include <ACGL/OpenGL/Managers.hh>
|
|
|
|
#include <ACGL/OpenGL/Objects.hh>
|
2014-10-20 17:09:19 +00:00
|
|
|
|
2014-10-31 09:38:06 +00:00
|
|
|
class Object : public Entity {
|
2014-10-20 17:09:19 +00:00
|
|
|
public:
|
2014-11-27 23:17:56 +00:00
|
|
|
Object(Model model, Material material,
|
|
|
|
glm::vec3 position, glm::vec3 rotation);
|
2014-11-13 00:22:33 +00:00
|
|
|
Object();
|
2014-10-20 17:09:19 +00:00
|
|
|
~Object();
|
2014-12-15 11:41:30 +00:00
|
|
|
void render(ACGL::OpenGL::SharedShaderProgram shader, bool lightingPass,
|
2015-02-04 21:54:40 +00:00
|
|
|
glm::mat4* viewProjcetionMatrix, std::vector<glm::mat4>* additionalMatrices);
|
2014-10-20 17:09:19 +00:00
|
|
|
private:
|
2014-11-13 00:22:33 +00:00
|
|
|
Model model;
|
2014-11-08 00:17:23 +00:00
|
|
|
Material material;
|
2014-10-20 17:09:19 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|