nuclear@0: #ifndef RTARG_H_ nuclear@0: #define RTARG_H_ nuclear@0: nuclear@0: class RenderTarget { nuclear@0: private: nuclear@0: int xsz, ysz, tex_xsz, tex_ysz; nuclear@0: unsigned int fbo; nuclear@0: unsigned int color, depth; nuclear@0: unsigned int tex_fmt; nuclear@0: nuclear@0: public: nuclear@0: RenderTarget(); nuclear@0: ~RenderTarget(); nuclear@0: nuclear@0: bool create(int xsz, int ysz); nuclear@0: bool resize(int xsz, int ysz); nuclear@0: void destroy(); nuclear@0: nuclear@0: bool is_valid() const; nuclear@0: nuclear@0: unsigned int get_texture() const; nuclear@0: nuclear@0: int get_width() const; nuclear@0: int get_height() const; nuclear@0: int get_tex_width() const; nuclear@0: int get_tex_height() const; nuclear@0: nuclear@0: friend void set_render_target(const RenderTarget *rtarg); nuclear@0: }; nuclear@0: nuclear@0: void set_render_target(const RenderTarget *rtarg); nuclear@0: nuclear@0: #endif /* RTARG_H_ */