#ifndef WATER_H_
#define WATER_H_

extern float waterTime; // frame consistent copy of updateCurrentTime

extern unsigned int depthFB, depthFBsample, depthFBdepth, depthFBstencil;
extern unsigned int cfd_state;
int CreateFrameDepth();

extern int WFO_WIDTH;
extern int WFO_HEIGHT;
extern unsigned int heightFB, heightFBsample;
extern unsigned int cfh_state;
int CreateFrameHeight();

extern unsigned int waterVAO,waterVBO,waterEBO;
int InitializeWater();
// Function to generate water grid mesh
void generateWaterMesh(GLuint* vao, GLuint* vbo, GLuint* ebo);

int RenderWater();

extern float waterHeightSample;
extern float lastWaterHeightSample;
int RenderWaterHeight();

#endif

