Added anisotropic filtering functionality for images, consolidated mipmap methods into Image:setMipmapFilter(filtermode, sharpness, anisotropy), added love.graphics.setDefaultMipmapFilter(filtermode, sharpness, anisotropy)

This commit is contained in:
Alex Szpakowski
2013-03-19 22:42:12 -03:00
parent 74ca349895
commit 8c406b7a4b
8 changed files with 158 additions and 44 deletions
+17 -5
View File
@@ -104,9 +104,8 @@ public:
const Image::Wrap &getWrap() const;
void setMipmapSharpness(float sharpness);
float getMipmapSharpness() const;
void setMipmapSharpness(float sharpness, float anisotropy);
void getMipmapSharpness(float *sharpness, float *anisotropy) const;
void bind() const;
@@ -117,9 +116,15 @@ public:
bool loadVolatile();
void unloadVolatile();
static void setDefaultMipmapSharpness(float sharpness, float anisotropy);
static void getDefaultMipmapSharpness(float *sharpness, float *anisotropy);
static void setDefaultMipmapFilter(FilterMode f);
static FilterMode getDefaultMipmapFilter();
static bool hasNpot();
static bool hasMipmapSupport();
static bool hasMipmapSharpnessSupport();
static bool hasMipmapAnisotropySupport();
private:
@@ -145,8 +150,8 @@ private:
// Mipmap texture LOD bias (sharpness) value.
float mipmapSharpness;
// Implementation-dependent min/max mipmap sharpness values.
float maxMipmapSharpness;
// Mipmap texture anisotropic filtering value.
float mipmapAnisotropy;
// True if mipmaps have been created for this Image.
bool mipmapsCreated;
@@ -162,6 +167,13 @@ private:
void checkMipmapsCreated();
static float maxMipmapSharpness;
static float maxMipmapAnisotropy;
static FilterMode defaultMipmapFilter;
static float defaultMipmapSharpness;
static float defaultMipmapAnisotropy;
}; // Image
} // opengl