39 lines
687 B
C++
39 lines
687 B
C++
// FrameBuffer.h
|
|
#ifdef __EMSCRIPTEN__
|
|
#else
|
|
#include "GL/glew.h"
|
|
#endif
|
|
|
|
#pragma once
|
|
#include <iostream>
|
|
#if defined(__APPLE__)
|
|
#include <SDL2/SDL.h>
|
|
#if defined(IMGUI_IMPL_OPENGL_ES2)
|
|
#include <SDL2/SDL_opengles.h>
|
|
#else
|
|
#include <SDL2/SDL_opengl.h>
|
|
#endif
|
|
#else
|
|
#include <SDL.h>
|
|
#if defined(IMGUI_IMPL_OPENGL_ES2)
|
|
#include <SDL_opengles2.h>
|
|
#else
|
|
#include <SDL_opengl.h>
|
|
#endif
|
|
#endif
|
|
|
|
class FrameBuffer {
|
|
public:
|
|
FrameBuffer(float width, float height);
|
|
~FrameBuffer();
|
|
unsigned int getFrameTexture();
|
|
void RescaleFrameBuffer(float width, float height);
|
|
void Bind() const;
|
|
void Unbind() const;
|
|
|
|
private:
|
|
unsigned int fbo;
|
|
unsigned int texture;
|
|
unsigned int rbo;
|
|
};
|