diff --git a/FinalProject/fragmentshader.fs b/FinalProject/fragmentshader.fs index a733b40..556286e 100644 --- a/FinalProject/fragmentshader.fs +++ b/FinalProject/fragmentshader.fs @@ -1,7 +1,13 @@ #version 430 core out vec4 FragColor; +in vec2 TexCoords; + +uniform sampler2D texture_diffuse1; +uniform sampler2D texture_specular1; + void main() -{ - FragColor = vec4(1.0f, 0.5f, 0.2f, 1.0f); -} \ No newline at end of file +{ + FragColor = texture(texture_specular1, TexCoords); + FragColor = texture(texture_diffuse1, TexCoords); +} \ No newline at end of file diff --git a/FinalProject/model.cpp b/FinalProject/model.cpp index 84edc04..1809c28 100644 --- a/FinalProject/model.cpp +++ b/FinalProject/model.cpp @@ -140,7 +140,7 @@ Mesh Model::processMesh(aiMesh* mesh, const aiScene* scene) { Logger::debug("Textures vector memory usage: " + std::to_string(textures.size() * sizeof(Texture) / 1024) + " KB"); Logger::debug("Mesh processed"); - return Mesh(std::move(vertices), std::move(indices), std::move(textures)); + return Mesh(vertices, indices, textures); } std::vector Model::loadMaterialTextures(aiMaterial* mat, aiTextureType type, TextureType textureType) { diff --git a/FinalProject/vertexshader.vs b/FinalProject/vertexshader.vs index 6a7114c..73091f6 100644 --- a/FinalProject/vertexshader.vs +++ b/FinalProject/vertexshader.vs @@ -1,7 +1,16 @@ #version 430 core layout (location = 0) in vec3 aPos; +layout (location = 1) in vec3 aNormal; +layout (location = 2) in vec2 aTexCoords; + +out vec2 TexCoords; + +uniform mat4 model; +uniform mat4 view; +uniform mat4 projection; void main() { - gl_Position = vec4(aPos.x, aPos.y, aPos.z, 1.0); + TexCoords = aTexCoords; + gl_Position = projection * view * model * vec4(aPos, 1.0); } \ No newline at end of file