summaryrefslogtreecommitdiffstats
path: root/src/mesa/main
diff options
context:
space:
mode:
authorMarek Olšák <[email protected]>2017-06-09 21:27:18 +0200
committerMarek Olšák <[email protected]>2017-06-22 01:51:02 +0200
commitc19b08b079da566d5c377c1ff4fe0ae6ac980003 (patch)
tree244ce7af5c68d0a213d00052f928f75b2b0ada70 /src/mesa/main
parent480bf7731bf54ac936ec7edfa977aeeb377745b6 (diff)
mesa: replace ctx->VertexProgram._TwoSideEnabled with a helper function
Reviewed-by: Nicolai Hähnle <[email protected]> Reviewed-by: Brian Paul <[email protected]> Reviewed-by: Timothy Arceri <[email protected]>
Diffstat (limited to 'src/mesa/main')
-rw-r--r--src/mesa/main/mtypes.h2
-rw-r--r--src/mesa/main/state.c19
-rw-r--r--src/mesa/main/state.h11
3 files changed, 11 insertions, 21 deletions
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index 4e7011bb701..e36bb919964 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -2255,8 +2255,6 @@ struct gl_vertex_program_state
GLboolean _Enabled; /**< Enabled and _valid_ user program? */
GLboolean PointSizeEnabled; /**< GL_VERTEX_PROGRAM_POINT_SIZE_ARB/NV */
GLboolean TwoSideEnabled; /**< GL_VERTEX_PROGRAM_TWO_SIDE_ARB/NV */
- /** Computed two sided lighting for fixed function/programs. */
- GLboolean _TwoSideEnabled;
struct gl_program *Current; /**< User-bound vertex program */
/** Currently enabled and valid vertex program (including internal
diff --git a/src/mesa/main/state.c b/src/mesa/main/state.c
index d1d0c2cd998..0772e6b82a1 100644
--- a/src/mesa/main/state.c
+++ b/src/mesa/main/state.c
@@ -290,22 +290,6 @@ update_frontbit(struct gl_context *ctx)
/**
- * Update the ctx->VertexProgram._TwoSideEnabled flag.
- */
-static void
-update_twoside(struct gl_context *ctx)
-{
- if (ctx->_Shader->CurrentProgram[MESA_SHADER_VERTEX] ||
- ctx->VertexProgram._Enabled) {
- ctx->VertexProgram._TwoSideEnabled = ctx->VertexProgram.TwoSideEnabled;
- } else {
- ctx->VertexProgram._TwoSideEnabled = (ctx->Light.Enabled &&
- ctx->Light.Model.TwoSide);
- }
-}
-
-
-/**
* Compute derived GL state.
* If __struct gl_contextRec::NewState is non-zero then this function \b must
* be called before rendering anything.
@@ -376,9 +360,6 @@ _mesa_update_state_locked( struct gl_context *ctx )
if (new_state & _NEW_LIGHT)
_mesa_update_lighting( ctx );
- if (new_state & (_NEW_LIGHT | _NEW_PROGRAM))
- update_twoside( ctx );
-
if (new_state & _NEW_PIXEL)
_mesa_update_pixel( ctx );
diff --git a/src/mesa/main/state.h b/src/mesa/main/state.h
index 7a6cdacf471..8817a4776d1 100644
--- a/src/mesa/main/state.h
+++ b/src/mesa/main/state.h
@@ -72,4 +72,15 @@ _mesa_need_secondary_color(const struct gl_context *ctx)
return GL_FALSE;
}
+/** Compute two sided lighting state for fixed function or programs. */
+static inline bool
+_mesa_vertex_program_two_side_enabled(const struct gl_context *ctx)
+{
+ if (ctx->_Shader->CurrentProgram[MESA_SHADER_VERTEX] ||
+ ctx->VertexProgram._Enabled)
+ return ctx->VertexProgram.TwoSideEnabled;
+
+ return ctx->Light.Enabled && ctx->Light.Model.TwoSide;
+}
+
#endif