9 #ifndef GlobeEngine_FrameBufferObject_h
10 #define GlobeEngine_FrameBufferObject_h
12 #include "OpenGL_Includes.h"
67 const std::shared_ptr<TextureHandle>
getColorTexture(GLint _index)
const;
97 void setSize(
int _width,
int _height);
112 void retrievePickResult(
int _x,
int _y,
int _w,
int _h, GLint _layer, GLenum _format, GLenum _type);
123 std::vector< std::shared_ptr<ge::TextureHandle> >
colorMaps;
void setupFrameBuffer(vmml::Vector2i _size)
Definition: FrameBufferObject.cpp:68
void release()
Definition: FrameBufferObject.cpp:318
void deleteFrameBufferHandle()
Definition: FrameBufferObject.cpp:251
void setSize(int _width, int _height)
Definition: FrameBufferObject.cpp:360
FBOTYPE
Definition: FrameBufferObject.h:23
union ge::FrameBufferObject::@0 pickdata
void getOpenGLError(std::string _input)
Definition: FrameBufferObject.cpp:384
void saveFramebufferToFile(std::string _filePath)
Definition: FrameBufferObject.cpp:268
void deleteMemory()
Definition: FrameBufferObject.cpp:42
void createStencilBuffer(vmml::Vector2i _size, int _channels=3)
Definition: FrameBufferObject.cpp:94
Definition: FrameBufferObject.h:26
Definition: FrameBufferObject.h:23
GLsizei height
Definition: FrameBufferObject.h:130
void resizeFrameBuffer(vmml::Vector2i _size)
void addLayerType(ge::TextureProperties2D _prop)
Definition: FrameBufferObject.cpp:157
GLuint sboId
Definition: FrameBufferObject.h:116
void retrievePickResult(int _x, int _y, int _w, int _h, GLint _layer, GLenum _format, GLenum _type)
Definition: FrameBufferObject.cpp:230
GLvoid * notype
Definition: FrameBufferObject.h:134
GLenum * colorBuffers
Definition: FrameBufferObject.h:118
Definition: FrameBufferObject.h:20
int getHeight() const
Definition: FrameBufferObject.cpp:369
FrameBufferObject()
Definition: FrameBufferObject.cpp:16
GLfloat * alpha
Definition: FrameBufferObject.h:135
void attachTextureToFramebuffer(GLenum _attachement, GLenum _textarget, GLuint _texHandle, GLint _level)
Definition: FrameBufferObject.cpp:261
void setStandardFramebufferID(int _id)
Definition: FrameBufferObject.cpp:333
void deletePickbuffer()
Definition: FrameBufferObject.cpp:47
void createGBuffer(vmml::Vector2i _size)
Definition: FrameBufferObject.cpp:115
RenderBufferObject rbo
Definition: FrameBufferObject.h:114
int getStandardFramebufferID()
Definition: FrameBufferObject.cpp:338
GLfloat * getPickingResultf(int _x, int _y, int _w, int _h, GLint _layer=2)
Definition: FrameBufferObject.cpp:222
Definition: RenderBufferObject.h:16
void createBasicBuffersAndColorBuffers(vmml::Vector2i _size, int _channels)
Definition: FrameBufferObject.cpp:59
std::vector< ge::TextureProperties2D > layertypes
Definition: FrameBufferObject.h:121
const std::shared_ptr< TextureHandle > getColorTexture(GLint _index) const
Definition: FrameBufferObject.cpp:205
GLubyte * getPickingResult(int _x, int _y, int _w, int _h, GLint _layer=2)
Definition: FrameBufferObject.cpp:214
void checkFramebufferStatus()
Definition: FrameBufferObject.cpp:342
int lookupStandardFramebufferID()
Definition: FrameBufferObject.cpp:326
std::vector< std::shared_ptr< ge::TextureHandle > > colorMaps
Definition: FrameBufferObject.h:123
GLsizei width
Definition: FrameBufferObject.h:129
ge::DepthMap2Drgba stencilMap
Definition: FrameBufferObject.h:127
GLuint fboId
Definition: FrameBufferObject.h:115
Definition: FrameBufferObject.h:28
void createBasicLayerSetup()
Definition: FrameBufferObject.cpp:148
void createGBufferWithIDLayer(vmml::Vector2i _size)
Definition: FrameBufferObject.cpp:129
virtual ~FrameBufferObject()
Definition: FrameBufferObject.cpp:23
void createBasicBufferSetup(vmml::Vector2i _size)
Definition: FrameBufferObject.cpp:55
Definition: FrameBufferObject.h:24
void attachColorChannels()
Definition: FrameBufferObject.cpp:195
void addTextureChannel(ge::TextureProperties2D _prop, std::string _name="")
Definition: FrameBufferObject.cpp:165
int getWidth() const
Definition: FrameBufferObject.cpp:365
Definition: AvalancheTrainingSimulationEngine.h:28
void printMaximumSizes()
Definition: FrameBufferObject.cpp:373
void bind()
Definition: FrameBufferObject.cpp:313
void setupTextureChannels()
Definition: FrameBufferObject.cpp:188
void createFrameBufferHandle()
Definition: FrameBufferObject.cpp:245
int standardFBOid
Definition: FrameBufferObject.h:139
void createDepthBuffer(vmml::Vector2i _size)
Definition: FrameBufferObject.cpp:78
Definition: Texture.h:221
void callDrawBuffers()
Definition: FrameBufferObject.cpp:256
void setupRenderBuffer(GLenum _internalFormat, GLenum _assignedAttachement)
Definition: FrameBufferObject.cpp:142
Definition: FrameBufferObject.h:25
GLubyte * rgba
Definition: FrameBufferObject.h:136
Definition: FrameBufferObject.h:27
void clear()
Definition: FrameBufferObject.cpp:30