X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fmesa%2Fswrast%2Fs_fog.c;h=8b0bdf8fa289f6ed8cf9a0a1632535f068cc2794;hb=75da9c9933a97e6f2baf0884b98350df800ee785;hp=ea59de1602007515d1c46da98df88967e3308b6e;hpb=213b9004a6ee033a16af3dcd187aa68b56c39858;p=mesa.git diff --git a/src/mesa/swrast/s_fog.c b/src/mesa/swrast/s_fog.c index ea59de16020..8b0bdf8fa28 100644 --- a/src/mesa/swrast/s_fog.c +++ b/src/mesa/swrast/s_fog.c @@ -1,6 +1,5 @@ /* * Mesa 3-D graphics library - * Version: 6.5.2 * * Copyright (C) 1999-2006 Brian Paul All Rights Reserved. * @@ -17,14 +16,15 @@ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * BRIAN PAUL BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN - * AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN - * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR + * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, + * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + * OTHER DEALINGS IN THE SOFTWARE. */ +#include "c99_math.h" #include "main/glheader.h" -#include "main/colormac.h" #include "main/macros.h" #include "s_context.h" @@ -49,12 +49,12 @@ _swrast_z_to_fogfactor(struct gl_context *ctx, GLfloat z) return CLAMP(f, 0.0F, 1.0F); case GL_EXP: d = ctx->Fog.Density; - f = EXPF(-d * z); + f = expf(-d * z); f = CLAMP(f, 0.0F, 1.0F); return f; case GL_EXP2: d = ctx->Fog.Density; - f = EXPF(-(d * d * z * z)); + f = expf(-(d * d * z * z)); f = CLAMP(f, 0.0F, 1.0F); return f; default: @@ -66,14 +66,14 @@ _swrast_z_to_fogfactor(struct gl_context *ctx, GLfloat z) #define LINEAR_FOG(f, coord) f = (fogEnd - coord) * fogScale -#define EXP_FOG(f, coord) f = EXPF(density * coord) +#define EXP_FOG(f, coord) f = expf(density * coord) #define EXP2_FOG(f, coord) \ do { \ GLfloat tmp = negDensitySquared * coord * coord; \ if (tmp < FLT_MIN_10_EXP) \ tmp = FLT_MIN_10_EXP; \ - f = EXPF(tmp); \ + f = expf(tmp); \ } while(0) @@ -87,11 +87,11 @@ do { \ * \param COMPUTE_F code to compute the fog blend factor, f. */ #define FOG_LOOP(TYPE, FOG_FUNC) \ -if (span->arrayAttribs & FRAG_BIT_FOGC) { \ +if (span->arrayAttribs & VARYING_BIT_FOGC) { \ GLuint i; \ for (i = 0; i < span->end; i++) { \ - const GLfloat fogCoord = span->array->attribs[FRAG_ATTRIB_FOGC][i][0]; \ - const GLfloat c = FABSF(fogCoord); \ + const GLfloat fogCoord = span->array->attribs[VARYING_SLOT_FOGC][i][0]; \ + const GLfloat c = fabsf(fogCoord); \ GLfloat f, oneMinusF; \ FOG_FUNC(f, c); \ f = CLAMP(f, 0.0F, 1.0F); \ @@ -102,13 +102,13 @@ if (span->arrayAttribs & FRAG_BIT_FOGC) { \ } \ } \ else { \ - const GLfloat fogStep = span->attrStepX[FRAG_ATTRIB_FOGC][0]; \ - GLfloat fogCoord = span->attrStart[FRAG_ATTRIB_FOGC][0]; \ - const GLfloat wStep = span->attrStepX[FRAG_ATTRIB_WPOS][3]; \ - GLfloat w = span->attrStart[FRAG_ATTRIB_WPOS][3]; \ + const GLfloat fogStep = span->attrStepX[VARYING_SLOT_FOGC][0]; \ + GLfloat fogCoord = span->attrStart[VARYING_SLOT_FOGC][0]; \ + const GLfloat wStep = span->attrStepX[VARYING_SLOT_POS][3]; \ + GLfloat w = span->attrStart[VARYING_SLOT_POS][3]; \ GLuint i; \ for (i = 0; i < span->end; i++) { \ - const GLfloat c = FABSF(fogCoord) / w; \ + const GLfloat c = fabsf(fogCoord) / w; \ GLfloat f, oneMinusF; \ FOG_FUNC(f, c); \ f = CLAMP(f, 0.0F, 1.0F); \ @@ -134,8 +134,8 @@ _swrast_fog_rgba_span( const struct gl_context *ctx, SWspan *span ) const SWcontext *swrast = CONST_SWRAST_CONTEXT(ctx); GLfloat rFog, gFog, bFog; - ASSERT(swrast->_FogEnabled); - ASSERT(span->arrayMask & SPAN_RGBA); + assert(swrast->_FogEnabled); + assert(span->arrayMask & SPAN_RGBA); /* compute (scaled) fog color */ if (span->array->ChanType == GL_UNSIGNED_BYTE) { @@ -173,8 +173,8 @@ _swrast_fog_rgba_span( const struct gl_context *ctx, SWspan *span ) FOG_LOOP(GLushort, LINEAR_FOG); } else { - GLfloat (*rgba)[4] = span->array->attribs[FRAG_ATTRIB_COL0]; - ASSERT(span->array->ChanType == GL_FLOAT); + GLfloat (*rgba)[4] = span->array->attribs[VARYING_SLOT_COL0]; + assert(span->array->ChanType == GL_FLOAT); FOG_LOOP(GLfloat, LINEAR_FOG); } } @@ -192,8 +192,8 @@ _swrast_fog_rgba_span( const struct gl_context *ctx, SWspan *span ) FOG_LOOP(GLushort, EXP_FOG); } else { - GLfloat (*rgba)[4] = span->array->attribs[FRAG_ATTRIB_COL0]; - ASSERT(span->array->ChanType == GL_FLOAT); + GLfloat (*rgba)[4] = span->array->attribs[VARYING_SLOT_COL0]; + assert(span->array->ChanType == GL_FLOAT); FOG_LOOP(GLfloat, EXP_FOG); } } @@ -211,8 +211,8 @@ _swrast_fog_rgba_span( const struct gl_context *ctx, SWspan *span ) FOG_LOOP(GLushort, EXP2_FOG); } else { - GLfloat (*rgba)[4] = span->array->attribs[FRAG_ATTRIB_COL0]; - ASSERT(span->array->ChanType == GL_FLOAT); + GLfloat (*rgba)[4] = span->array->attribs[VARYING_SLOT_COL0]; + assert(span->array->ChanType == GL_FLOAT); FOG_LOOP(GLfloat, EXP2_FOG); } } @@ -236,8 +236,8 @@ _swrast_fog_rgba_span( const struct gl_context *ctx, SWspan *span ) FOG_LOOP(GLushort, BLEND_FOG); } else { - GLfloat (*rgba)[4] = span->array->attribs[FRAG_ATTRIB_COL0]; - ASSERT(span->array->ChanType == GL_FLOAT); + GLfloat (*rgba)[4] = span->array->attribs[VARYING_SLOT_COL0]; + assert(span->array->ChanType == GL_FLOAT); FOG_LOOP(GLfloat, BLEND_FOG); } }