Commit 63b5f1fd by Geoff Lang

Removed parameter validation from Texture::set* calls since validation is…

Removed parameter validation from Texture::set* calls since validation is already done in ValidateTexParamParameters. TRAC #23908 Signed-off-by: Jamie Madill Signed-off-by: Shannon Woods
parent d4f180b2
......@@ -85,143 +85,49 @@ void Texture::releaseProxy(const Renderbuffer *proxy)
mRenderbufferProxies.release(proxy);
}
// Returns true on successful filter state update (valid enum parameter)
bool Texture::setMinFilter(GLenum filter)
void Texture::setMinFilter(GLenum filter)
{
switch (filter)
{
case GL_NEAREST:
case GL_LINEAR:
case GL_NEAREST_MIPMAP_NEAREST:
case GL_LINEAR_MIPMAP_NEAREST:
case GL_NEAREST_MIPMAP_LINEAR:
case GL_LINEAR_MIPMAP_LINEAR:
mSamplerState.minFilter = filter;
return true;
default:
return false;
}
mSamplerState.minFilter = filter;
}
// Returns true on successful filter state update (valid enum parameter)
bool Texture::setMagFilter(GLenum filter)
void Texture::setMagFilter(GLenum filter)
{
switch (filter)
{
case GL_NEAREST:
case GL_LINEAR:
mSamplerState.magFilter = filter;
return true;
default:
return false;
}
mSamplerState.magFilter = filter;
}
// Returns true on successful wrap state update (valid enum parameter)
bool Texture::setWrapS(GLenum wrap)
void Texture::setWrapS(GLenum wrap)
{
switch (wrap)
{
case GL_REPEAT:
case GL_CLAMP_TO_EDGE:
case GL_MIRRORED_REPEAT:
mSamplerState.wrapS = wrap;
return true;
default:
return false;
}
mSamplerState.wrapS = wrap;
}
// Returns true on successful wrap state update (valid enum parameter)
bool Texture::setWrapT(GLenum wrap)
void Texture::setWrapT(GLenum wrap)
{
switch (wrap)
{
case GL_REPEAT:
case GL_CLAMP_TO_EDGE:
case GL_MIRRORED_REPEAT:
mSamplerState.wrapT = wrap;
return true;
default:
return false;
}
mSamplerState.wrapT = wrap;
}
// Returns true on successful wrap state update (valid enum parameter)
bool Texture::setWrapR(GLenum wrap)
void Texture::setWrapR(GLenum wrap)
{
switch (wrap)
{
case GL_REPEAT:
case GL_CLAMP_TO_EDGE:
case GL_MIRRORED_REPEAT:
mSamplerState.wrapR = wrap;
return true;
default:
return false;
}
mSamplerState.wrapR = wrap;
}
// Returns true on successful max anisotropy update (valid anisotropy value)
bool Texture::setMaxAnisotropy(float textureMaxAnisotropy, float contextMaxAnisotropy)
void Texture::setMaxAnisotropy(float textureMaxAnisotropy, float contextMaxAnisotropy)
{
textureMaxAnisotropy = std::min(textureMaxAnisotropy, contextMaxAnisotropy);
if (textureMaxAnisotropy < 1.0f)
{
return false;
}
mSamplerState.maxAnisotropy = textureMaxAnisotropy;
return true;
mSamplerState.maxAnisotropy = std::min(textureMaxAnisotropy, contextMaxAnisotropy);
}
bool Texture::setCompareMode(GLenum mode)
void Texture::setCompareMode(GLenum mode)
{
// Acceptable mode parameters from GLES 3.0.2 spec, table 3.17
switch (mode)
{
case GL_NONE:
case GL_COMPARE_REF_TO_TEXTURE:
mSamplerState.compareMode = mode;
return true;
default:
return false;
}
mSamplerState.compareMode = mode;
}
bool Texture::setCompareFunc(GLenum func)
void Texture::setCompareFunc(GLenum func)
{
// Acceptable function parameters from GLES 3.0.2 spec, table 3.17
switch (func)
{
case GL_LEQUAL:
case GL_GEQUAL:
case GL_LESS:
case GL_GREATER:
case GL_EQUAL:
case GL_NOTEQUAL:
case GL_ALWAYS:
case GL_NEVER:
mSamplerState.compareFunc = func;
return true;
default:
return false;
}
mSamplerState.compareFunc = func;
}
// Returns true on successful usage state update (valid enum parameter)
bool Texture::setUsage(GLenum usage)
void Texture::setUsage(GLenum usage)
{
switch (usage)
{
case GL_NONE:
case GL_FRAMEBUFFER_ATTACHMENT_ANGLE:
mUsage = usage;
return true;
default:
return false;
}
mUsage = usage;
}
GLenum Texture::getMinFilter() const
......
......@@ -69,15 +69,15 @@ class Texture : public RefCountObject
GLenum getTarget() const;
bool setMinFilter(GLenum filter);
bool setMagFilter(GLenum filter);
bool setWrapS(GLenum wrap);
bool setWrapT(GLenum wrap);
bool setWrapR(GLenum wrap);
bool setMaxAnisotropy(float textureMaxAnisotropy, float contextMaxAnisotropy);
bool setCompareMode(GLenum mode);
bool setCompareFunc(GLenum func);
bool setUsage(GLenum usage);
void setMinFilter(GLenum filter);
void setMagFilter(GLenum filter);
void setWrapS(GLenum wrap);
void setWrapT(GLenum wrap);
void setWrapR(GLenum wrap);
void setMaxAnisotropy(float textureMaxAnisotropy, float contextMaxAnisotropy);
void setCompareMode(GLenum mode);
void setCompareFunc(GLenum func);
void setUsage(GLenum usage);
GLenum getMinFilter() const;
GLenum getMagFilter() const;
......
......@@ -529,6 +529,7 @@ bool ValidateTexParamParameters(gl::Context *context, GLenum pname, GLint param)
return true;
case GL_TEXTURE_COMPARE_MODE:
// Acceptable mode parameters from GLES 3.0.2 spec, table 3.17
switch (param)
{
case GL_NONE:
......@@ -540,6 +541,7 @@ bool ValidateTexParamParameters(gl::Context *context, GLenum pname, GLint param)
break;
case GL_TEXTURE_COMPARE_FUNC:
// Acceptable function parameters from GLES 3.0.2 spec, table 3.17
switch (param)
{
case GL_LEQUAL:
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment