summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIan Romanick <ian.d.romanick@intel.com>2010-09-28 13:50:34 -0700
committerIan Romanick <ian.d.romanick@intel.com>2010-10-01 15:49:13 -0700
commitcd5dea640144b45ba2e88c2451f1f01ee08c1c4a (patch)
tree367df8b52dec0cd75e7ab4cd9d2a91f098bd0156
parentcc6f13def53eb280b63427fbdeca197a09315062 (diff)
ARB_texture_rg: Add GL_RED as a valid GL_DEPTH_TEXTURE_MODE
-rw-r--r--src/mesa/main/texparam.c3
-rw-r--r--src/mesa/swrast/s_texfilter.c3
2 files changed, 5 insertions, 1 deletions
diff --git a/src/mesa/main/texparam.c b/src/mesa/main/texparam.c
index 58d785812ea..e96ace73403 100644
--- a/src/mesa/main/texparam.c
+++ b/src/mesa/main/texparam.c
@@ -351,7 +351,8 @@ set_tex_parameteri(GLcontext *ctx,
if (ctx->Extensions.ARB_depth_texture &&
(params[0] == GL_LUMINANCE ||
params[0] == GL_INTENSITY ||
- params[0] == GL_ALPHA)) {
+ params[0] == GL_ALPHA ||
+ (ctx->Extensions.ARB_texture_rg && params[0] == GL_RED))) {
if (texObj->DepthMode != params[0]) {
flush(ctx, texObj);
texObj->DepthMode = params[0];
diff --git a/src/mesa/swrast/s_texfilter.c b/src/mesa/swrast/s_texfilter.c
index 1aa2bcaf74d..de694c31bf1 100644
--- a/src/mesa/swrast/s_texfilter.c
+++ b/src/mesa/swrast/s_texfilter.c
@@ -3051,6 +3051,9 @@ sample_depth_texture( GLcontext *ctx,
case GL_ALPHA:
ASSIGN_4V(texel[i], 0.0F, 0.0F, 0.0F, result);
break;
+ case GL_RED:
+ ASSIGN_4V(texel[i], result, 0.0F, 0.0F, 1.0F);
+ break;
default:
_mesa_problem(ctx, "Bad depth texture mode");
}