diff options
author | Brian Paul <brian.paul@tungstengraphics.com> | 2006-05-18 14:16:43 +0000 |
---|---|---|
committer | Brian Paul <brian.paul@tungstengraphics.com> | 2006-05-18 14:16:43 +0000 |
commit | 0d957ca400045b2b21f5654eb1672b43c4c1950c (patch) | |
tree | 047d576eb1ab40bbf41851e89e2f57c361df3a15 | |
parent | 3d8a791ff90068b3aae60b014dd3bd35d55f52d4 (diff) |
change initialization of texcoords - not all C compilers support non-constant array initializers
-rw-r--r-- | src/mesa/shader/slang/slang_library_texsample.c | 42 |
1 files changed, 36 insertions, 6 deletions
diff --git a/src/mesa/shader/slang/slang_library_texsample.c b/src/mesa/shader/slang/slang_library_texsample.c index 38765599cf..7d56880400 100644 --- a/src/mesa/shader/slang/slang_library_texsample.c +++ b/src/mesa/shader/slang/slang_library_texsample.c @@ -39,10 +39,15 @@ GLvoid _slang_library_tex1d (GLfloat bias, GLfloat s, GLfloat sampler, GLfloat * GET_CURRENT_CONTEXT(ctx); SWcontext *swrast = SWRAST_CONTEXT(ctx); GLuint unit = (GLuint) sampler; - GLfloat texcoord[4] = { s, 0.0f, 0.0f, 1.0f }; + GLfloat texcoord[4]; GLfloat lambda = bias; GLchan rgba[4]; + texcoord[0] = s; + texcoord[1] = 0.0f; + texcoord[2] = 0.0f; + texcoord[3] = 1.0f; + swrast->TextureSample[unit] (ctx, ctx->Texture.Unit[unit]._Current, 1, (const GLfloat (*)[4]) texcoord, &lambda, &rgba); color[0] = CHAN_TO_FLOAT(rgba[0]); @@ -56,10 +61,15 @@ GLvoid _slang_library_tex2d (GLfloat bias, GLfloat s, GLfloat t, GLfloat sampler GET_CURRENT_CONTEXT(ctx); SWcontext *swrast = SWRAST_CONTEXT(ctx); GLuint unit = (GLuint) sampler; - GLfloat texcoord[4] = { s, t, 0.0f, 1.0f }; + GLfloat texcoord[4]; GLfloat lambda = bias; GLchan rgba[4]; + texcoord[0] = s; + texcoord[1] = t; + texcoord[2] = 0.0f; + texcoord[3] = 1.0f; + swrast->TextureSample[unit] (ctx, ctx->Texture.Unit[unit]._Current, 1, (const GLfloat (*)[4]) texcoord, &lambda, &rgba); color[0] = CHAN_TO_FLOAT(rgba[0]); @@ -74,10 +84,15 @@ GLvoid _slang_library_tex3d (GLfloat bias, GLfloat s, GLfloat t, GLfloat r, GLfl GET_CURRENT_CONTEXT(ctx); SWcontext *swrast = SWRAST_CONTEXT(ctx); GLuint unit = (GLuint) sampler; - GLfloat texcoord[4] = { s, t, r, 1.0f }; + GLfloat texcoord[4]; GLfloat lambda = bias; GLchan rgba[4]; + texcoord[0] = s; + texcoord[1] = t; + texcoord[2] = r; + texcoord[3] = 1.0f; + swrast->TextureSample[unit] (ctx, ctx->Texture.Unit[unit]._Current, 1, (const GLfloat (*)[4]) texcoord, &lambda, &rgba); color[0] = CHAN_TO_FLOAT(rgba[0]); @@ -92,10 +107,15 @@ GLvoid _slang_library_texcube (GLfloat bias, GLfloat s, GLfloat t, GLfloat r, GL GET_CURRENT_CONTEXT(ctx); SWcontext *swrast = SWRAST_CONTEXT(ctx); GLuint unit = (GLuint) sampler; - GLfloat texcoord[4] = { s, t, r, 1.0f }; + GLfloat texcoord[4]; GLfloat lambda = bias; GLchan rgba[4]; + texcoord[0] = s; + texcoord[1] = t; + texcoord[2] = r; + texcoord[3] = 1.0f; + swrast->TextureSample[unit] (ctx, ctx->Texture.Unit[unit]._Current, 1, (const GLfloat (*)[4]) texcoord, &lambda, &rgba); color[0] = CHAN_TO_FLOAT(rgba[0]); @@ -110,10 +130,15 @@ GLvoid _slang_library_shad1d (GLfloat bias, GLfloat s, GLfloat t, GLfloat r, GLf GET_CURRENT_CONTEXT(ctx); SWcontext *swrast = SWRAST_CONTEXT(ctx); GLuint unit = (GLuint) sampler; - GLfloat texcoord[4] = { s, t, r, 1.0f }; + GLfloat texcoord[4]; GLfloat lambda = bias; GLchan rgba[4]; + texcoord[0] = s; + texcoord[1] = t; + texcoord[2] = r; + texcoord[3] = 1.0f; + swrast->TextureSample[unit] (ctx, ctx->Texture.Unit[unit]._Current, 1, (const GLfloat (*)[4]) texcoord, &lambda, &rgba); color[0] = CHAN_TO_FLOAT(rgba[0]); @@ -128,10 +153,15 @@ GLvoid _slang_library_shad2d (GLfloat bias, GLfloat s, GLfloat t, GLfloat r, GLf GET_CURRENT_CONTEXT(ctx); SWcontext *swrast = SWRAST_CONTEXT(ctx); GLuint unit = (GLuint) sampler; - GLfloat texcoord[4] = { s, t, r, 1.0f }; + GLfloat texcoord[4]; GLfloat lambda = bias; GLchan rgba[4]; + texcoord[0] = s; + texcoord[1] = t; + texcoord[2] = r; + texcoord[3] = 1.0f; + swrast->TextureSample[unit] (ctx, ctx->Texture.Unit[unit]._Current, 1, (const GLfloat (*)[4]) texcoord, &lambda, &rgba); color[0] = CHAN_TO_FLOAT(rgba[0]); |