summaryrefslogtreecommitdiff
path: root/src/main.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/main.c')
-rw-r--r--src/main.c26
1 files changed, 16 insertions, 10 deletions
diff --git a/src/main.c b/src/main.c
index 6cf2d5c..a899cbb 100644
--- a/src/main.c
+++ b/src/main.c
@@ -33,7 +33,7 @@ main([[maybe_unused]] int argc, [[maybe_unused]] char **argv)
glfwWindowHint(GLFW_CONTEXT_VERSION_MINOR, 3);
glfwWindowHint(GLFW_OPENGL_PROFILE, GLFW_OPENGL_CORE_PROFILE);
- GLFWwindow *window = glfwCreateWindow(800, 600, "LearnOpenGL", NULL, NULL);
+ GLFWwindow *window = glfwCreateWindow(800, 800, "LearnOpenGL", NULL, NULL);
if (window == NULL) {
fprintf(stderr, "glfwCreateWindow failed\n");
return 1;
@@ -107,11 +107,6 @@ main([[maybe_unused]] int argc, [[maybe_unused]] char **argv)
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAX_LEVEL, GL_LINEAR);
while (!glfwWindowShouldClose(window)) {
- mat4 trans = GLM_MAT4_IDENTITY_INIT;
- glm_translate(trans, (vec3){0.0f, 0.5f, 0.2f});
- glm_rotate(trans, glfwGetTime(), (vec3){0.0f, 0.0f, 1.0f});
- glm_scale(trans, (vec3){0.5f, 0.5f, 0.5f});
-
glClearColor(0.0f, 0.0f, 0.0f, 0.0f);
glClear(GL_COLOR_BUFFER_BIT);
@@ -121,17 +116,28 @@ main([[maybe_unused]] int argc, [[maybe_unused]] char **argv)
!(r&1), !(r&2), !(r&4), !(r&8));
glUniform1i(shader_uniform_location(&shader, "texture0"), 0);
glUniform1i(shader_uniform_location(&shader, "texture1"), 1);
- glUniformMatrix4fv(shader_uniform_location(&shader,
- "transform"),
- 1, GL_FALSE, trans[0]);
glActiveTexture(GL_TEXTURE0);
glBindTexture(GL_TEXTURE_2D, texture.id);
glActiveTexture(GL_TEXTURE1);
glBindTexture(GL_TEXTURE_2D, texture1.id);
-
glBindVertexArray(VAO);
+
+ mat4 trans = GLM_MAT4_IDENTITY_INIT;
+ glm_translate(trans, (vec3){0.0f, 0.5f, 0.2f});
+ glm_rotate(trans, glfwGetTime(), (vec3){0.0f, 0.0f, 1.0f});
+ glm_scale(trans, (vec3){0.5f, 0.5f, 0.5f});
+ glUniformMatrix4fv(shader_uniform_location(&shader,
+ "transform"),
+ 1, GL_FALSE, trans[0]);
glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_INT, 0);
+ glm_mat4_identity(trans);
+ glm_rotate(trans, glfwGetTime() * 2, (vec3){0.0f, 0.0f, 1.0f});
+ glm_scale(trans, (vec3){0.5f, 1.5f, 1.0f});
+ glUniformMatrix4fv(shader_uniform_location(&shader,
+ "transform"),
+ 1, GL_FALSE, trans[0]);
+ glDrawElements(GL_TRIANGLES, 6, GL_UNSIGNED_INT, 0);
glfwSwapBuffers(window);
glfwPollEvents();
}