WIP
This commit is contained in:
+27
-15
@@ -22,9 +22,21 @@ void Model::temp_CreateModelShit()
|
|||||||
Vertices.push_back(0.0f);
|
Vertices.push_back(0.0f);
|
||||||
Vertices.push_back(2.0f);
|
Vertices.push_back(2.0f);
|
||||||
|
|
||||||
Normals.push_back(1.0f);
|
Colors.push_back(1.0f);
|
||||||
Normals.push_back(1.0f);
|
Colors.push_back(1.0f);
|
||||||
Normals.push_back(1.0f);
|
Colors.push_back(1.0f);
|
||||||
|
Colors.push_back(1.0f);
|
||||||
|
|
||||||
|
Colors.push_back(1.0f);
|
||||||
|
Colors.push_back(1.0f);
|
||||||
|
Colors.push_back(1.0f);
|
||||||
|
Colors.push_back(1.0f);
|
||||||
|
|
||||||
|
Colors.push_back(1.0f);
|
||||||
|
Colors.push_back(1.0f);
|
||||||
|
Colors.push_back(1.0f);
|
||||||
|
Colors.push_back(1.0f);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -35,15 +47,15 @@ void Model::CreateBuffers( std::vector<float> _Vertices, std::vector<float> _Nor
|
|||||||
glBufferData(GL_ARRAY_BUFFER, Vertices.size()*sizeof(float), Vertices.data(), GL_STATIC_DRAW);
|
glBufferData(GL_ARRAY_BUFFER, Vertices.size()*sizeof(float), Vertices.data(), GL_STATIC_DRAW);
|
||||||
GLERROR("GLEW: BufferFail1");
|
GLERROR("GLEW: BufferFail1");
|
||||||
|
|
||||||
glGenBuffers(1, &NormalBuffer);
|
glGenBuffers(1, &Colorbuffer);
|
||||||
glBindBuffer(GL_ARRAY_BUFFER, NormalBuffer);
|
glBindBuffer(GL_ARRAY_BUFFER, Colorbuffer);
|
||||||
glBufferData(GL_ARRAY_BUFFER, Normals.size()*sizeof(float), Normals.data(), GL_STATIC_DRAW);
|
glBufferData(GL_ARRAY_BUFFER, Colors.size()*sizeof(float), Colors.data(), GL_STATIC_DRAW);
|
||||||
GLERROR("GLEW: BufferFail2");
|
GLERROR("GLEW: BufferFail2");
|
||||||
|
|
||||||
glGenBuffers(1, &TextureCoordBuffer);
|
// glGenBuffers(1, &TextureCoordBuffer);
|
||||||
glBindBuffer(GL_ARRAY_BUFFER, TextureCoordBuffer);
|
// glBindBuffer(GL_ARRAY_BUFFER, TextureCoordBuffer);
|
||||||
glBufferData(GL_ARRAY_BUFFER, TextureCoords.size()*sizeof(float), TextureCoords.data(), GL_STATIC_DRAW);
|
// glBufferData(GL_ARRAY_BUFFER, TextureCoords.size()*sizeof(float), TextureCoords.data(), GL_STATIC_DRAW);
|
||||||
GLERROR("GLEW: BufferFail3");
|
// GLERROR("GLEW: BufferFail3");
|
||||||
|
|
||||||
glGenVertexArrays(1, &VAO);
|
glGenVertexArrays(1, &VAO);
|
||||||
glBindVertexArray(VAO);
|
glBindVertexArray(VAO);
|
||||||
@@ -53,15 +65,15 @@ void Model::CreateBuffers( std::vector<float> _Vertices, std::vector<float> _Nor
|
|||||||
glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 0, 0);
|
glVertexAttribPointer(0, 3, GL_FLOAT, GL_FALSE, 0, 0);
|
||||||
GLERROR("GLEW: BufferFail5");
|
GLERROR("GLEW: BufferFail5");
|
||||||
|
|
||||||
glBindBuffer(GL_ARRAY_BUFFER, NormalBuffer);
|
glBindBuffer(GL_ARRAY_BUFFER, Colorbuffer);
|
||||||
glVertexAttribPointer(1, 3, GL_FLOAT, GL_FALSE, 0, 0);
|
glVertexAttribPointer(1, 4, GL_FLOAT, GL_FALSE, 0, 0);
|
||||||
|
|
||||||
glBindBuffer(GL_ARRAY_BUFFER, TextureCoordBuffer);
|
// glBindBuffer(GL_ARRAY_BUFFER, TextureCoordBuffer);
|
||||||
glVertexAttribPointer(2, 2, GL_FLOAT, GL_FALSE, 0, 0);
|
// glVertexAttribPointer(2, 2, GL_FLOAT, GL_FALSE, 0, 0);
|
||||||
|
|
||||||
glEnableVertexAttribArray(0);
|
glEnableVertexAttribArray(0);
|
||||||
glEnableVertexAttribArray(1);
|
glEnableVertexAttribArray(1);
|
||||||
glEnableVertexAttribArray(2);
|
/* glEnableVertexAttribArray(2);*/
|
||||||
GLERROR("GLEW: BufferFail5");
|
GLERROR("GLEW: BufferFail5");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -22,12 +22,12 @@ class Model
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
glm::vec3 Position;
|
glm::vec3 Position;
|
||||||
|
std::vector<float> Colors;
|
||||||
std::vector<float> Vertices;
|
std::vector<float> Vertices;
|
||||||
std::vector<float> Normals;
|
std::vector<float> Normals;
|
||||||
std::vector<float> TextureCoords;
|
std::vector<float> TextureCoords;
|
||||||
|
|
||||||
|
GLuint Colorbuffer;
|
||||||
|
|
||||||
GLuint VertBuffer;
|
GLuint VertBuffer;
|
||||||
GLuint NormalBuffer;
|
GLuint NormalBuffer;
|
||||||
GLuint TextureCoordBuffer;
|
GLuint TextureCoordBuffer;
|
||||||
|
|||||||
@@ -30,6 +30,23 @@ void Renderer::AddObjectToDraw()
|
|||||||
|
|
||||||
//Fixa med shaders, lägga in alla verts osv.
|
//Fixa med shaders, lägga in alla verts osv.
|
||||||
|
|
||||||
|
void Renderer::LoadContent()
|
||||||
|
{
|
||||||
|
glEnable(GL_DEPTH_TEST);
|
||||||
|
LOG_INFO("Compiling Shader");
|
||||||
|
|
||||||
|
GLuint vertexShader = CompileShader(GL_VERTEX_SHADER, "Shaders/Vertex.glsl");
|
||||||
|
GLuint fragmentShader = CompileShader(GL_FRAGMENT_SHADER, "Shaders\Fragment.glsl");
|
||||||
|
|
||||||
|
shaderProgram = glCreateProgram();
|
||||||
|
glAttachShader(shaderProgram, vertexShader);
|
||||||
|
glAttachShader(shaderProgram, fragmentShader);
|
||||||
|
LOG_INFO("Linking shader program...");
|
||||||
|
glLinkProgram(shaderProgram);
|
||||||
|
if(GLERROR("glLinkProgram"))
|
||||||
|
exit(EXIT_FAILURE);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
GLuint Renderer::CompileShader(GLenum shaderType, std::string fileName)
|
GLuint Renderer::CompileShader(GLenum shaderType, std::string fileName)
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -36,6 +36,7 @@ public:
|
|||||||
void AddObjectToDraw();
|
void AddObjectToDraw();
|
||||||
void AddTextToDraw();
|
void AddTextToDraw();
|
||||||
|
|
||||||
|
void LoadContent();
|
||||||
GLuint CompileShader(GLenum, std::string);
|
GLuint CompileShader(GLenum, std::string);
|
||||||
|
|
||||||
};
|
};
|
||||||
Reference in New Issue
Block a user