Skip to content
Snippets Groups Projects
Select Git revision
  • 3b8356f4dde47e0138460cb8d46400ec9d97f1f3
  • master default protected
2 results

OpenGLWrapper.cpp

Blame
  • OpenGLWrapper.cpp 10.17 KiB
    #include "OpenGLWrapper.h"
    #include "ShaderType.h"
    #include "ResourceLoader.h"
    
    // settings
    const unsigned int _SCR_WIDTH = 800;
    const unsigned int _SCR_HEIGHT = 600;
    
    // lighting
    glm::vec3 _lightPos(1.2f, 20.0f, 2.0f);
    
    Mesh::Mesh(GLuint _nVertex, GLuint _VAO, GLuint *_VBOs)
    {
    	nVertex = _nVertex;
    	VAO = _VAO;
    	VBOs = _VBOs;
    }
    
    GLuint Mesh::get_vertex_count()
    {
    	return nVertex;
    }
    GLuint Mesh::get_VAO()
    {
    	return VAO;
    }
    GLuint *Mesh::get_VBOs()
    {
    	return VBOs;
    }
    
    void draw_mesh(Mesh &mesh)
    {
    	glBindVertexArray(mesh.get_VAO());
    
    	glDrawArrays(GL_TRIANGLES, 0, mesh.get_vertex_count());
    
    	glBindVertexArray(0);
    }
    
    Material::Material(GLuint _prog, GLuint _diffuseMap, GLuint _specularMap)
    {
    	prog = _prog;
    
    	diffuseMap = _diffuseMap;
    	specularMap = _specularMap;
    }
    
    GLuint Material::get_program()
    {
    	return prog;
    }
    GLuint Material::get_diffuseMap()
    {
    	return diffuseMap;
    }
    GLuint Material::get_specularMap()
    {
    	return specularMap;
    }
    
    RenderObject::RenderObject(Mesh * _mesh)
    {
    	translate = glm::vec3(0.0f, 0.0f, 0.0f);
    	rotate = glm::vec3(0.0f, 0.0f, 0.0f);
    	scale = glm::vec3(1.0f, 1.0f, 1.0f);
    
    	mesh = _mesh;
    
    	update_model_matrix();