summaryrefslogtreecommitdiff
path: root/plugins/peopsxgl/prim.c
diff options
context:
space:
mode:
authoriCatButler <i.am.catbutler@gmail.com>2016-05-02 15:01:27 +0100
committeriCatButler <i.am.catbutler@gmail.com>2016-05-02 15:01:27 +0100
commit216c2ff3aefc9e0295ed9b1486935d65f6c13f55 (patch)
tree88791c94e67ac8a5b99b9b39238ca4513077adf6 /plugins/peopsxgl/prim.c
parent153c8eb4997d21d3b2965cf38d4348f05c29860f (diff)
downloadpcsxr-216c2ff3aefc9e0295ed9b1486935d65f6c13f55.tar.gz
Fix bugs from previous
Fix stray triangles - Switch to full floating point RTPS/RTPT - Clamp w values to near plane Fix texture corruption in 1.78, copy 2.4 Tweak - Remove matrix replacement - Add W component to vertices - Wrap glVertex3fv calls - Use counter to call glVertex4fv for PGXP vertices only
Diffstat (limited to 'plugins/peopsxgl/prim.c')
-rwxr-xr-xplugins/peopsxgl/prim.c80
1 files changed, 40 insertions, 40 deletions
diff --git a/plugins/peopsxgl/prim.c b/plugins/peopsxgl/prim.c
index adf6380e..ffa3fcf3 100755
--- a/plugins/peopsxgl/prim.c
+++ b/plugins/peopsxgl/prim.c
@@ -151,16 +151,16 @@ static __inline void PRIMdrawTexturedQuad(OGLVertex* vertex1, OGLVertex* vertex2
{
glBegin(GL_TRIANGLE_STRIP);
glTexCoord2fv(&vertex1->sow);
- glVertex3fv(&vertex1->x);
+ PGXP_glVertexfv(&vertex1->x);
glTexCoord2fv(&vertex2->sow);
- glVertex3fv(&vertex2->x);
+ PGXP_glVertexfv(&vertex2->x);
glTexCoord2fv(&vertex4->sow);
- glVertex3fv(&vertex4->x);
+ PGXP_glVertexfv(&vertex4->x);
glTexCoord2fv(&vertex3->sow);
- glVertex3fv(&vertex3->x);
+ PGXP_glVertexfv(&vertex3->x);
glEnd();
}
@@ -171,13 +171,13 @@ static __inline void PRIMdrawTexturedTri(OGLVertex* vertex1, OGLVertex* vertex2,
{
glBegin(GL_TRIANGLES);
glTexCoord2fv(&vertex1->sow);
- glVertex3fv(&vertex1->x);
+ PGXP_glVertexfv(&vertex1->x);
glTexCoord2fv(&vertex2->sow);
- glVertex3fv(&vertex2->x);
+ PGXP_glVertexfv(&vertex2->x);
glTexCoord2fv(&vertex3->sow);
- glVertex3fv(&vertex3->x);
+ PGXP_glVertexfv(&vertex3->x);
glEnd();
}
@@ -190,15 +190,15 @@ static __inline void PRIMdrawTexGouraudTriColor(OGLVertex* vertex1, OGLVertex* v
SETPCOL(vertex1);
glTexCoord2fv(&vertex1->sow);
- glVertex3fv(&vertex1->x);
+ PGXP_glVertexfv(&vertex1->x);
SETPCOL(vertex2);
glTexCoord2fv(&vertex2->sow);
- glVertex3fv(&vertex2->x);
+ PGXP_glVertexfv(&vertex2->x);
SETPCOL(vertex3);
glTexCoord2fv(&vertex3->sow);
- glVertex3fv(&vertex3->x);
+ PGXP_glVertexfv(&vertex3->x);
glEnd();
}
@@ -210,19 +210,19 @@ static __inline void PRIMdrawTexGouraudTriColorQuad(OGLVertex* vertex1, OGLVerte
glBegin(GL_TRIANGLE_STRIP);
SETPCOL(vertex1);
glTexCoord2fv(&vertex1->sow);
- glVertex3fv(&vertex1->x);
+ PGXP_glVertexfv(&vertex1->x);
SETPCOL(vertex2);
glTexCoord2fv(&vertex2->sow);
- glVertex3fv(&vertex2->x);
+ PGXP_glVertexfv(&vertex2->x);
SETPCOL(vertex4);
glTexCoord2fv(&vertex4->sow);
- glVertex3fv(&vertex4->x);
+ PGXP_glVertexfv(&vertex4->x);
SETPCOL(vertex3);
glTexCoord2fv(&vertex3->sow);
- glVertex3fv(&vertex3->x);
+ PGXP_glVertexfv(&vertex3->x);
glEnd();
}
@@ -231,9 +231,9 @@ static __inline void PRIMdrawTexGouraudTriColorQuad(OGLVertex* vertex1, OGLVerte
static __inline void PRIMdrawTri(OGLVertex* vertex1, OGLVertex* vertex2, OGLVertex* vertex3)
{
glBegin(GL_TRIANGLES);
- glVertex3fv(&vertex1->x);
- glVertex3fv(&vertex2->x);
- glVertex3fv(&vertex3->x);
+ PGXP_glVertexfv(&vertex1->x);
+ PGXP_glVertexfv(&vertex2->x);
+ PGXP_glVertexfv(&vertex3->x);
glEnd();
}
@@ -243,10 +243,10 @@ static __inline void PRIMdrawTri2(OGLVertex* vertex1, OGLVertex* vertex2,
OGLVertex* vertex3, OGLVertex* vertex4)
{
glBegin(GL_TRIANGLE_STRIP);
- glVertex3fv(&vertex1->x);
- glVertex3fv(&vertex3->x);
- glVertex3fv(&vertex2->x);
- glVertex3fv(&vertex4->x);
+ PGXP_glVertexfv(&vertex1->x);
+ PGXP_glVertexfv(&vertex3->x);
+ PGXP_glVertexfv(&vertex2->x);
+ PGXP_glVertexfv(&vertex4->x);
glEnd();
}
@@ -257,13 +257,13 @@ static __inline void PRIMdrawGouraudTriColor(OGLVertex* vertex1, OGLVertex* vert
{
glBegin(GL_TRIANGLES);
SETPCOL(vertex1);
- glVertex3fv(&vertex1->x);
+ PGXP_glVertexfv(&vertex1->x);
SETPCOL(vertex2);
- glVertex3fv(&vertex2->x);
+ PGXP_glVertexfv(&vertex2->x);
SETPCOL(vertex3);
- glVertex3fv(&vertex3->x);
+ PGXP_glVertexfv(&vertex3->x);
glEnd();
}
@@ -274,16 +274,16 @@ static __inline void PRIMdrawGouraudTri2Color(OGLVertex* vertex1, OGLVertex* ver
{
glBegin(GL_TRIANGLE_STRIP);
SETPCOL(vertex1);
- glVertex3fv(&vertex1->x);
+ PGXP_glVertexfv(&vertex1->x);
SETPCOL(vertex3);
- glVertex3fv(&vertex3->x);
+ PGXP_glVertexfv(&vertex3->x);
SETPCOL(vertex2);
- glVertex3fv(&vertex2->x);
+ PGXP_glVertexfv(&vertex2->x);
SETPCOL(vertex4);
- glVertex3fv(&vertex4->x);
+ PGXP_glVertexfv(&vertex4->x);
glEnd();
}
@@ -295,10 +295,10 @@ static __inline void PRIMdrawFlatLine(OGLVertex* vertex1, OGLVertex* vertex2,OGL
SETPCOL(vertex1);
- glVertex3fv(&vertex1->x);
- glVertex3fv(&vertex2->x);
- glVertex3fv(&vertex3->x);
- glVertex3fv(&vertex4->x);
+ PGXP_glVertexfv(&vertex1->x);
+ PGXP_glVertexfv(&vertex2->x);
+ PGXP_glVertexfv(&vertex3->x);
+ PGXP_glVertexfv(&vertex4->x);
glEnd();
}
@@ -309,16 +309,16 @@ static __inline void PRIMdrawGouraudLine(OGLVertex* vertex1, OGLVertex* vertex2,
glBegin(GL_QUADS);
SETPCOL(vertex1);
- glVertex3fv(&vertex1->x);
+ PGXP_glVertexfv(&vertex1->x);
SETPCOL(vertex2);
- glVertex3fv(&vertex2->x);
+ PGXP_glVertexfv(&vertex2->x);
SETPCOL(vertex3);
- glVertex3fv(&vertex3->x);
+ PGXP_glVertexfv(&vertex3->x);
SETPCOL(vertex4);
- glVertex3fv(&vertex4->x);
+ PGXP_glVertexfv(&vertex4->x);
glEnd();
}
@@ -328,10 +328,10 @@ static __inline void PRIMdrawQuad(OGLVertex* vertex1, OGLVertex* vertex2,
OGLVertex* vertex3, OGLVertex* vertex4)
{
glBegin(GL_QUADS);
- glVertex3fv(&vertex1->x);
- glVertex3fv(&vertex2->x);
- glVertex3fv(&vertex3->x);
- glVertex3fv(&vertex4->x);
+ PGXP_glVertexfv(&vertex1->x);
+ PGXP_glVertexfv(&vertex2->x);
+ PGXP_glVertexfv(&vertex3->x);
+ PGXP_glVertexfv(&vertex4->x);
glEnd();
}