/*] Copyright (c) 2009-2010, Charles McGarvey [************************** **] All rights reserved. * * vi:ts=4 sw=4 tw=75 * * Distributable under the terms and conditions of the 2-clause BSD license; * see the file COPYING for a complete text of the license. * **************************************************************************/ #ifndef _MOOF_SPRITE_HH_ #define _MOOF_SPRITE_HH_ /** * \file sprite.hh * Image-loading and OpenGL texture loading. */ #include #include #include namespace moof { class sprite { public: sprite() {} explicit sprite(const std::string& name, int tile = image::no_tile); explicit sprite(const image_handle& image, int tile = image::no_tile); explicit sprite(const sprite& sprite, int tile = image::no_tile); void image(const std::string& name); void tile(int tile); void bind() const; static void reset_binding(); void draw(const vector3 vertices[4]) const; private: image_handle image_; scalar tile_[8]; }; } // namespace moof #endif // _MOOF_SPRITE_HH_