From: Brian Paul Date: Wed, 4 Feb 2004 03:00:42 +0000 (+0000) Subject: fix two-sided lighting / vertex program bug (#887330) X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=609f35274c9dcf8607673ec1970efff583c97ed7;p=mesa.git fix two-sided lighting / vertex program bug (#887330) --- diff --git a/src/mesa/swrast_setup/ss_context.c b/src/mesa/swrast_setup/ss_context.c index ef83dd42370..cc30d5a93f5 100644 --- a/src/mesa/swrast_setup/ss_context.c +++ b/src/mesa/swrast_setup/ss_context.c @@ -1,9 +1,8 @@ - /* * Mesa 3-D graphics library - * Version: 4.1 + * Version: 6.0.1 * - * Copyright (C) 1999-2002 Brian Paul All Rights Reserved. + * Copyright (C) 1999-2004 Brian Paul All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -37,7 +36,10 @@ #include "tnl/t_pipeline.h" #include "tnl/t_vertex.h" -#define _SWSETUP_NEW_RENDERINDEX (_NEW_POLYGON|_NEW_LIGHT) +/* Need to check lighting state and vertex program state to know + * if two-sided lighting is in effect. + */ +#define _SWSETUP_NEW_RENDERINDEX (_NEW_POLYGON|_NEW_LIGHT|_NEW_PROGRAM) GLboolean diff --git a/src/mesa/swrast_setup/ss_triangle.c b/src/mesa/swrast_setup/ss_triangle.c index 3a0af5de5eb..39e39126122 100644 --- a/src/mesa/swrast_setup/ss_triangle.c +++ b/src/mesa/swrast_setup/ss_triangle.c @@ -1,9 +1,8 @@ - /* * Mesa 3-D graphics library - * Version: 3.5 + * Version: 6.0.1 * - * Copyright (C) 1999-2001 Brian Paul All Rights Reserved. + * Copyright (C) 1999-2002 Brian Paul All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -291,7 +290,8 @@ void _swsetup_choose_trifuncs( GLcontext *ctx ) ctx->Polygon.OffsetFill) ind |= SS_OFFSET_BIT; - if (ctx->Light.Enabled && ctx->Light.Model.TwoSide) + if ((ctx->Light.Enabled && ctx->Light.Model.TwoSide) || + ctx->VertexProgram.TwoSideEnabled) ind |= SS_TWOSIDE_BIT; /* We piggyback the two-sided stencil front/back determination on the