#pragma once #include #include #include #include #include "Texture.h" #include "Light.h" enum RenderMode { GBUF_DEBUG, DEFERRED_LIGHT, FORWARD_LIGHT }; struct SceneContext { std::vector lights; std::map floatValues; glm::mat4x4 viewMatrix; glm::mat4x4 projectionMatrix; glm::mat4x4 mvpMatrix; glm::mat4x4 modelViewMatrix; glm::mat4x4 modelMatrix; glm::mat3x3 normalMatrix; GLuint skyboxTex; std::map textures; GLuint height; GLuint width; glm::vec4 bg; std::string fboDisplayName; glm::vec3 camPos; RenderMode renderMode; bool firstRedraw; };