terravisor/include/fbo.h

23 lines
606 B
C
Raw Normal View History

#ifndef FBO_H_
#define FBO_H_
#include <GLFW/glfw3.h>
struct Framebuffer {
GLuint id = 0;
GLuint albedoTexture = 0;
GLuint positionTexture = 0;
GLuint normalTexture = 0;
GLuint depthTexture = 0;
};
namespace FBO {
Framebuffer GenerateFramebuffer(int width, int height);
GLuint CreateFramebuffer();
GLuint CreateTexture(int width, int height, GLenum format);
GLuint CreateDepthTexture(int width, int height);
void AttachTextureToFramebuffer(GLuint framebufferId, GLuint textureId, GLenum attachment);
void Cleanup(const Framebuffer& fbo);
}
#endif // FBO_H_