summaryrefslogtreecommitdiff
path: root/src/mesa/swrast_setup
diff options
context:
space:
mode:
authorKeith Whitwell <keith@tungstengraphics.com>2000-11-16 21:05:34 +0000
committerKeith Whitwell <keith@tungstengraphics.com>2000-11-16 21:05:34 +0000
commit23caf20169ac38436ee9c13914f1d6aa7cf6bb5e (patch)
tree21307f7bbcaf9ee1e841d7e7bee130570a7b5b95 /src/mesa/swrast_setup
parent179516673211a2350e479d5321840291f339f5dd (diff)
Move the transform and lighting code to two new directories
math: Provides basic matrix and vector functionality that might be useful to multiple software t&l implementations, and is used by core mesa to manage the Model, Project, etc matrices. tnl: The real transform & lighting code from core mesa, including everything from glVertex3f through vertex buffer handling, transformation, clipping, lighting and handoff to a driver for rasterization. The interfaces of these can be further tightened up, but the basic splitting up of state and code move is done.
Diffstat (limited to 'src/mesa/swrast_setup')
-rw-r--r--src/mesa/swrast_setup/ss_context.c3
-rw-r--r--src/mesa/swrast_setup/ss_triangle.c2
-rw-r--r--src/mesa/swrast_setup/ss_tritmp.h6
-rw-r--r--src/mesa/swrast_setup/ss_vb.c5
-rw-r--r--src/mesa/swrast_setup/ss_vbtmp.h3
5 files changed, 13 insertions, 6 deletions
diff --git a/src/mesa/swrast_setup/ss_context.c b/src/mesa/swrast_setup/ss_context.c
index 10942037a3..e58abdc6c5 100644
--- a/src/mesa/swrast_setup/ss_context.c
+++ b/src/mesa/swrast_setup/ss_context.c
@@ -1,4 +1,4 @@
-/* $Id: ss_context.c,v 1.3 2000/11/13 20:02:58 keithw Exp $ */
+/* $Id: ss_context.c,v 1.4 2000/11/16 21:05:42 keithw Exp $ */
/*
* Mesa 3-D graphics library
@@ -38,6 +38,7 @@
#include "swrast_setup.h"
+#include "tnl/t_context.h"
/* Stub for swsetup->Triangle to select a true triangle function
* after a state change.
diff --git a/src/mesa/swrast_setup/ss_triangle.c b/src/mesa/swrast_setup/ss_triangle.c
index ab70f5c97b..9bcf13c3ed 100644
--- a/src/mesa/swrast_setup/ss_triangle.c
+++ b/src/mesa/swrast_setup/ss_triangle.c
@@ -29,6 +29,8 @@
#include "macros.h"
#include "types.h"
+#include "tnl/t_context.h"
+
#include "ss_triangle.h"
#include "ss_context.h"
diff --git a/src/mesa/swrast_setup/ss_tritmp.h b/src/mesa/swrast_setup/ss_tritmp.h
index 37b5664225..054fcf9eb7 100644
--- a/src/mesa/swrast_setup/ss_tritmp.h
+++ b/src/mesa/swrast_setup/ss_tritmp.h
@@ -30,7 +30,7 @@ static void TAG(triangle)(GLcontext *ctx,
GLuint e0, GLuint e1, GLuint e2,
GLuint pv)
{
- struct vertex_buffer *VB = ctx->VB;
+ struct vertex_buffer *VB = TNL_VB(ctx);
SWvertex *verts = SWSETUP_VB(VB)->verts;
SWvertex *v[3];
GLfloat offset;
@@ -224,7 +224,7 @@ static void TAG(quad)( GLcontext *ctx, GLuint v0,
static void TAG(line)( GLcontext *ctx, GLuint v0, GLuint v1, GLuint pv )
{
- struct vertex_buffer *VB = ctx->VB;
+ struct vertex_buffer *VB = TNL_VB(ctx);
SWvertex *verts = SWSETUP_VB(VB)->verts;
GLubyte c[2][4], s[2][4];
GLuint i[2];
@@ -264,7 +264,7 @@ static void TAG(line)( GLcontext *ctx, GLuint v0, GLuint v1, GLuint pv )
static void TAG(points)( GLcontext *ctx, GLuint first, GLuint last )
{
- struct vertex_buffer *VB = ctx->VB;
+ struct vertex_buffer *VB = TNL_VB(ctx);
SWvertex *verts = SWSETUP_VB(VB)->verts;
int i;
diff --git a/src/mesa/swrast_setup/ss_vb.c b/src/mesa/swrast_setup/ss_vb.c
index 15e6049cb5..ff1916174b 100644
--- a/src/mesa/swrast_setup/ss_vb.c
+++ b/src/mesa/swrast_setup/ss_vb.c
@@ -27,10 +27,13 @@
#include "glheader.h"
#include "macros.h"
-#include "stages.h"
#include "swrast/swrast.h"
+#include "tnl/t_context.h"
+#include "tnl/t_stages.h"
+
+#include "math/m_vector.h"
#include "ss_context.h"
#include "ss_vb.h"
diff --git a/src/mesa/swrast_setup/ss_vbtmp.h b/src/mesa/swrast_setup/ss_vbtmp.h
index 53fe5bcae6..47b3005500 100644
--- a/src/mesa/swrast_setup/ss_vbtmp.h
+++ b/src/mesa/swrast_setup/ss_vbtmp.h
@@ -29,6 +29,7 @@
static void TAG(rs)(struct vertex_buffer *VB, GLuint start, GLuint end)
{
GLcontext *ctx = VB->ctx;
+ TNLcontext *tnl = TNL_CONTEXT(ctx);
SWvertex *v;
GLfloat (*eye)[4];
GLfloat (*win)[4];
@@ -54,7 +55,7 @@ static void TAG(rs)(struct vertex_buffer *VB, GLuint start, GLuint end)
/* TODO: Get import_client_data to pad vectors out to 4 cleanly.
*/
- gl_import_client_data( VB, ctx->_RenderFlags,
+ gl_import_client_data( VB, tnl->_RenderFlags,
(VB->ClipOrMask
? /* VEC_CLEAN| */VEC_WRITABLE|VEC_GOOD_STRIDE
: /* VEC_CLEAN| */VEC_GOOD_STRIDE));