Compare commits

..

2 Commits

Author SHA1 Message Date
k
78ba333164 cleanup
All checks were successful
Verify build / verify_build (push) Successful in 55s
2025-05-27 13:18:52 -04:00
k
6e69a543f0 cleanup and bug fix 2025-05-27 13:18:33 -04:00
4 changed files with 14 additions and 13 deletions

View File

@ -10,6 +10,7 @@ public:
void setRotate(float yaw, float pitch);
glm::mat4 getView();
glm::mat4 getProjection();
float aspect;
private:
void update();
@ -20,6 +21,5 @@ private:
float yaw;
float pitch;
float fov;
float aspect;
};
#endif

View File

@ -3,8 +3,8 @@
#include <glm/ext/matrix_transform.hpp>
Camera::Camera(glm::vec3 pos, float yaw, float pitch, float fov, float aspect)
: up(glm::vec3(0, 1, 0)), pos(pos), yaw(yaw), pitch(pitch), fov(fov),
aspect(aspect) {
: aspect(aspect), up(glm::vec3(0, 1, 0)), pos(pos), yaw(yaw), pitch(pitch),
fov(fov) {
update();
}

View File

@ -2,9 +2,8 @@
#include "camera.hpp"
#include <GLFW/glfw3.h>
#include <cassert>
#include <glm/ext/matrix_transform.hpp>
#include <glm/glm.hpp>
#include <glm/gtc/matrix_transform.hpp>
#include <glm/gtc/type_ptr.hpp>
#include <shader.hpp>
#include <shapes.h>
#include <texture.hpp>
@ -62,26 +61,25 @@ int main(void) {
Camera *cam =
new Camera(glm::vec3(0.0, 0.0, 5.0), -90.0f, 0.0f, 45.0, 800.0 / 600);
glfwSetWindowUserPointer(window, cam);
glEnable(GL_DEPTH_TEST);
while (!glfwWindowShouldClose(window)) {
glClearColor(0.2f, 0.3f, 0.3f, 1.0f);
glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);
shaderProgram->use();
shaderProgram->setInt("Tex0", 0);
shaderProgram->setMat4("view", cam->getView());
shaderProgram->setMat4("projection", cam->getProjection());
glBindVertexArray(VAO);
glEnable(GL_DEPTH_TEST);
for (unsigned int i = 0; i < 10; i++) {
if (i % 2 == 0) {
texture->bind(GL_TEXTURE0);
} else {
texture2->bind(GL_TEXTURE0);
}
texture2->bind(GL_TEXTURE1);
glActiveTexture(GL_TEXTURE0);
for (unsigned int i = 0; i < 10; i++) {
shaderProgram->setInt("tex0", i%2);
glm::mat4 model = glm::mat4(1.0f);
model = glm::translate(model, cubePositions[i]);
@ -113,4 +111,7 @@ void processInput(GLFWwindow *window) {
void framebuffer_size_callback(GLFWwindow *window, int width, int height) {
UNUSED(window);
glViewport(0, 0, width, height);
Camera *cam = (Camera *)glfwGetWindowUserPointer(window);
if (cam)
cam->aspect = (float)width/height;
}

View File

@ -25,7 +25,7 @@ Texture::Texture(GLenum type, const char *path) : type(type) {
stbi_image_free(data);
};
Texture::~Texture() {}
Texture::~Texture() {glDeleteTextures(1, &ID);}
void Texture::bind(GLenum texture) {
glActiveTexture(texture);