X-Git-Url: https://git.dogcows.com/gitweb?p=chaz%2Fyoink;a=blobdiff_plain;f=src%2Fmoof%2Fsprite.cc;h=b71a4b99ee8a860393047a4bc15eb0a27dd49251;hp=7548ab0b8b7ae7b975b4f88bb1f66222240e241c;hb=574af38ed616d1adfa5e6ce35f67cda1f707f89d;hpb=382626aad0a683ed8642a6a807eea743db45f7f8 diff --git a/src/moof/sprite.cc b/src/moof/sprite.cc index 7548ab0..b71a4b9 100644 --- a/src/moof/sprite.cc +++ b/src/moof/sprite.cc @@ -1,13 +1,11 @@ -/*] Copyright (c) 2009-2010, Charles McGarvey [************************** +/*] Copyright (c) 2009-2011, 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. * -**************************************************************************/ +*****************************************************************************/ #include // FILE #include // strncmp @@ -15,6 +13,7 @@ #include #include +#include #include "dispatcher.hh" #include "log.hh" @@ -25,16 +24,16 @@ namespace moof { -sprite::sprite(const std::string& path, int tile) +sprite::sprite(const std::string& name, int tile) { - image_ = resource::load(path); - image_->tile_coordinates(tile, tile_); + image(name); + sprite::tile(tile); } sprite::sprite(const image_handle& image, int tile) : image_(image) { - image_->tile_coordinates(tile, tile_); + sprite::tile(tile); } sprite::sprite(const sprite& sprite, int tile) @@ -43,11 +42,9 @@ sprite::sprite(const sprite& sprite, int tile) image_ = sprite.image_; } - -void sprite::image(const std::string& path) +void sprite::image(const std::string& name) { - image_ = resource::load(path); - // FIXME what about tiles? + image_ = resource::load(name, "png"); } void sprite::tile(int tile) @@ -55,7 +52,6 @@ void sprite::tile(int tile) if (image_) image_->tile_coordinates(tile, tile_); } - void sprite::bind() const { if (image_) image_->bind(); @@ -66,7 +62,6 @@ void sprite::reset_binding() image::reset_binding(); } - void sprite::draw(const vector3 vertices[4]) const { bind(); @@ -77,7 +72,6 @@ void sprite::draw(const vector3 vertices[4]) const glDrawArrays(GL_TRIANGLE_FAN, 0, 4); } - /* void min_filter(GLuint filter) { @@ -107,7 +101,6 @@ void sprite::draw(const vector3 vertices[4]) const glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, mWrapT); } - bool sprite::tile_coordinates(int index, scalar coords[8], orientation orientation) const {