#ifndef _DYNAMICCUBEMAP_
#define _DYNAMICCUBEMAP_

#include "gl.hpp"
#include "Vector3d.hpp"
#include <string>
#include "Game.hpp"

class DynamicCubeMap
{
public:

	DynamicCubeMap(GLsizei p_width, GLsizei p_height, GLdouble near, GLdouble far);

	~DynamicCubeMap();

	void render(Vector3f viewPoint);

	GLuint getTexName();

	void enable();

	void disable();

	void display();

	void setGameReference(Game* p_game);

private:
	GLuint textureName;

	GLsizei width;

	GLsizei height;

	Game* game;

	GLuint renderBuffer;
	
	GLuint frameBuffer;

	GLdouble nearClippingPlane;

	GLdouble farClippingPlane;

};
#endif // _DYNAMICCUBEMAP_
