From e183a929a3653446a6545ca764e47c47f7b00e50 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sun, 17 Jul 2011 16:50:57 +0300 Subject: Improve map reduce speed. --- src/resources/image.cpp | 4 +++- src/resources/image.h | 19 +++++++++++++------ 2 files changed, 16 insertions(+), 7 deletions(-) (limited to 'src/resources') diff --git a/src/resources/image.cpp b/src/resources/image.cpp index fdcf210c3..29e89d26e 100644 --- a/src/resources/image.cpp +++ b/src/resources/image.cpp @@ -54,7 +54,8 @@ Image::Image(SDL_Surface *image, bool hasAlphaChannel, Uint8 *alphaChannel): mHasAlphaChannel(hasAlphaChannel), mSDLSurface(image), mAlphaChannel(alphaChannel), - mIsAlphaVisible(hasAlphaChannel) + mIsAlphaVisible(hasAlphaChannel), + mIsAlphaCalculated(false) { #ifdef USE_OPENGL mGLImage = 0; @@ -90,6 +91,7 @@ Image::Image(GLuint glimage, int width, int height, mAlphaChannel(0), mUseAlphaCache(false), mIsAlphaVisible(true), + mIsAlphaCalculated(false), mGLImage(glimage), mTexWidth(texWidth), mTexHeight(texHeight) diff --git a/src/resources/image.h b/src/resources/image.h index c4b0cf540..718301f81 100644 --- a/src/resources/image.h +++ b/src/resources/image.h @@ -223,21 +223,27 @@ class Image : public Resource void setAlphaVisible(bool b) { mIsAlphaVisible = b; } + bool isAlphaCalculated() + { return mIsAlphaCalculated; } + + void setAlphaCalculated(bool b) + { mIsAlphaCalculated = b; } + SDL_Rect mBounds; protected: - // ----------------------- - // Generic protected members - // ----------------------- + // ----------------------- + // Generic protected members + // ----------------------- bool mLoaded; float mAlpha; bool mHasAlphaChannel; - // ----------------------- - // SDL protected members - // ----------------------- + // ----------------------- + // SDL protected members + // ----------------------- /** SDL Constructor */ Image(SDL_Surface *image, bool hasAlphaChannel = false, @@ -257,6 +263,7 @@ class Image : public Resource bool mUseAlphaCache; bool mIsAlphaVisible; + bool mIsAlphaCalculated; static bool mEnableAlphaCache; static bool mEnableAlpha; -- cgit v1.2.3-60-g2f50