diff --git a/Engine/engine/Shaders/fragmentShaderTexture.fs b/Engine/engine/Shaders/fragmentShaderTexture.fs index 52f0c8c..403c954 100644 --- a/Engine/engine/Shaders/fragmentShaderTexture.fs +++ b/Engine/engine/Shaders/fragmentShaderTexture.fs @@ -1,9 +1,16 @@ #version 330 core out vec4 FragColor; + in vec3 ourColor; in vec2 TexCoord; -uniform sampler2D ourTexture; + +// texture samplers +uniform sampler2D texture1; +uniform sampler2D texture2; + void main() { - FragColor = texture(ourTexture, TexCoord); -} \ No newline at end of file + // linearly interpolate between both textures (80% container, 20% awesomeface) + FragColor = mix(texture(texture1, TexCoord), texture(texture2, TexCoord), 0.2); +} + diff --git a/Engine/engine/Shaders/vertexShaderTexture.vs b/Engine/engine/Shaders/vertexShaderTexture.vs index 311ec24..ef04f60 100644 --- a/Engine/engine/Shaders/vertexShaderTexture.vs +++ b/Engine/engine/Shaders/vertexShaderTexture.vs @@ -10,5 +10,5 @@ void main() { gl_Position = vec4(aPos, 1.0); ourColor = aColor; - TexCoord = aTexCoord; + TexCoord = vec2(aTexCoord.x, aTexCoord.y); } \ No newline at end of file diff --git a/Engine/engine/draw.cpp b/Engine/engine/draw.cpp index d82d9fe..192e8d9 100644 --- a/Engine/engine/draw.cpp +++ b/Engine/engine/draw.cpp @@ -179,20 +179,19 @@ drawFigureReturn drawDebilMode(const char* vertexPath, const char* fragmentPath, configureVertexAttribute(true, true); - unsigned int texture1 = loadAndCreateTexture("assets/Preview.png", GL_RGBA, true); - // unsigned int texture2 = loadAndCreateTexture("assets/awesomeface.png", GL_RGBA, false); - - - activateAndBindTextures(texture1, GL_TEXTURE0); - // activateAndBindTextures(texture2, GL_TEXTURE1); - + unsigned int texture1 = loadAndCreateTexture("assets/container.png", GL_RGB, true); + unsigned int texture2 = loadAndCreateTexture("assets/awesomeface.png", GL_RGBA, false); ourShader.use(); // don't forget to activate/use the shader before setting uniforms! // either set it manually like so: - glUniform1i(glGetUniformLocation(ourShader.ID, "texture1"), 0); + ourShader.setInt("texture1", 0); // or set it via the texture class ourShader.setInt("texture2", 1); + + activateAndBindTextures(texture1, GL_TEXTURE0); + activateAndBindTextures(texture2, GL_TEXTURE1); + glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_INT, 0); drawFigureReturn newReturn; diff --git a/Engine/engine/match b/Engine/engine/match index 7374b38..fe38a25 100755 Binary files a/Engine/engine/match and b/Engine/engine/match differ