Public Member Functions |
| Accum (const GLEWContext *const glewContext) |
| Construct a new accumulation buffer.
|
| ~Accum () |
| Destruct the accumulation buffer.
|
bool | init (const PixelViewport &pvp, GLuint textureFormat) |
| Initialize the accumulation buffer.
|
void | exit () |
| Exit the accum buffer.
|
bool | resize (const int width, const int height) |
| Resize the accumulation buffer.
|
void | clear () |
| Clear the accumulation buffer.
|
void | accum () |
| Accumulate a frame from the read buffer into the accumulation buffer.
|
void | display () |
| Copy the result of the accumulation to the current draw buffer.
|
uint32_t | getMaxSteps () const |
| Get the maximum number of accumulation steps possible.
|
uint32_t | getNumSteps () const |
| Get the current number of accumulation steps done.
|
void | setTotalSteps (uint32_t totalSteps) |
| Set the total number of accumulation steps that will be done.
|
uint32_t | getTotalSteps () |
bool | usesFBO () const |
| Test if the accumulation uses the FBO implementation.
|
const GLEWContext * | glewGetContext () const |
Static Public Member Functions |
static bool | usesFBO (const GLEWContext *glewContext) |
A C++ class to abstract an accumulation buffer.
Depending on the OpenGL version, an FBO or glAccum() is used.
Remark: MacOS systems seem to have a buggy implementation of glAccum(), and use a workaround which needs setTotalSteps() to set up the total number of accumulations done.
Definition at line 40 of file accum.h.