#ifndef FFGLHeat_H #define FFGLHeat_H #include #include "../FFGLPluginSDK.h" class FFGLHeat : public CFreeFrameGLPlugin { public: FFGLHeat(); virtual ~FFGLHeat() {} /////////////////////////////////////////////////// // FreeFrameGL plugin methods /////////////////////////////////////////////////// DWORD SetParameter(const SetParameterStruct* pParam); DWORD GetParameter(DWORD dwIndex); DWORD ProcessOpenGL(ProcessOpenGLStruct* pGL); DWORD InitGL(const FFGLViewportStruct *vp); DWORD DeInitGL(); /////////////////////////////////////////////////// // Factory method /////////////////////////////////////////////////// static DWORD __stdcall CreateInstance(CFreeFrameGLPlugin **ppOutInstance) { *ppOutInstance = new FFGLHeat(); if (*ppOutInstance != NULL) return FF_SUCCESS; return FF_FAIL; } protected: // Parameters float m_Heat; float m_HeatY; int m_initResources; GLuint m_heatTextureId; FFGLExtensions m_extensions; FFGLShader m_shader; GLint m_inputTextureLocation; GLint m_heatTextureLocation; GLint m_maxCoordsLocation; GLint m_heatAmountLocation; }; #endif