X-Git-Url: https://git.dogcows.com/gitweb?a=blobdiff_plain;ds=sidebyside;f=src%2Fmoof%2Ftexture.hh;fp=src%2Fmoof%2Ftexture.hh;h=0000000000000000000000000000000000000000;hb=382626aad0a683ed8642a6a807eea743db45f7f8;hp=a53dcd1bb0580dfa977a9625f80997f8b36e9319;hpb=1da520638918096276158ecdfaeebc14a3d70be7;p=chaz%2Fyoink diff --git a/src/moof/texture.hh b/src/moof/texture.hh deleted file mode 100644 index a53dcd1..0000000 --- a/src/moof/texture.hh +++ /dev/null @@ -1,107 +0,0 @@ - -/*] 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_TEXTURE_HH_ -#define _MOOF_TEXTURE_HH_ - -/** - * \file texture.hh - * Image-loading and OpenGL texture loading. - */ - -#include - -#include - -#include -#include - - -namespace moof { - - -class texture; -typedef boost::shared_ptr texture_ptr; - - -class texture : public image -{ -public: - - static const int no_tile = -1; - - /** - * Possible orientations for texture coordinates. - */ - typedef enum - { - normal = 0, ///< Normal orientation. - flip = 1, ///< Flip over a horizontal axis. - reverse = 2, ///< Flip over a vertical axis. - flip_and_reverse = 3 ///< Flip over both. - } orientation; - - - static texture_ptr alloc(const std::string& name) - { - return texture_ptr(new texture(name)); - } - - explicit texture(const std::string& name); - - void bind() const; - GLuint object() const; - - static void reset_binding(); - - void min_filter(GLuint filter); - void mag_filter(GLuint filter); - void wrap_s(GLuint wrap); - void wrap_t(GLuint wrap); - - - /** - * Calculate texture coordinates for a tile at a certain index. Tiles - * are indexed start with zero as the to-left tile and moving across, - * then down. - * \param index The tile index. - * \param coords An array of scalars where the texture coordinates will - * be stored after this call. The first coordinate (u,v) will be in - * the first two places and so on until all four coordinates are - * stored, therefore requiring enough room for an array of eight - * scalars. The winding of the coordinates is always counter-clockwise - * (the GL default). - * \return True if index is valid, false otherwise. - */ - bool tile_coordinates(int index, scalar coords[8]) const; - - /** - * This version let's you specify an orientation that will be reflected - * in the texture coordinates. This allows you to easily map a texture - * backwards or upside-down. - * \param what The orientation; can be flip, reverse, or - * flip_and_reverse. - * \return True if index is valid, false otherwise. - */ - bool tile_coordinates(int index, scalar coords[8], orientation what) const; - - -private: - - class impl; - boost::shared_ptr impl_; -}; - - -} // namespace moof - -#endif // _MOOF_TEXTURE_HH_ -