Skip to content

Commit

Permalink
Clean up.
Browse files Browse the repository at this point in the history
  • Loading branch information
danij-deng committed Aug 19, 2010
1 parent 8d287f8 commit 51007d7
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 33 deletions.
14 changes: 8 additions & 6 deletions doomsday/engine/portable/include/p_seg.h
Expand Up @@ -3,8 +3,8 @@
* License: GPL
* Online License Link: http://www.gnu.org/licenses/gpl.html
*
*\author Copyright © 2003-2009 Jaakko Keränen <jaakko.keranen@iki.fi>
*\author Copyright © 2006-2009 Daniel Swanson <danij@dengine.net>
*\author Copyright © 2003-2010 Jaakko Keränen <jaakko.keranen@iki.fi>
*\author Copyright © 2006-2010 Daniel Swanson <danij@dengine.net>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
Expand All @@ -23,16 +23,18 @@
*/

/**
* r_seg.h: World segs.
* World segs.
*/

#ifndef __DOOMSDAY_WORLD_SEG_H__
#define __DOOMSDAY_WORLD_SEG_H__
#ifndef LIBDENG_WORLD_SEG_H
#define LIBDENG_WORLD_SEG_H

#include "r_data.h"
#include "p_dmu.h"

void Seg_GetGeometryDeltasXY(seg_t* seg, boolean flipEdges, vec3_t bottomLeft, vec3_t topLeft, vec3_t bottomRight, vec3_t topRight);

boolean Seg_GetProperty(const seg_t *seg, setargs_t *args);
boolean Seg_SetProperty(seg_t *seg, const setargs_t *args);

#endif
#endif /* LIBDENG_WORLD_SEG_H */
19 changes: 16 additions & 3 deletions doomsday/engine/portable/src/p_seg.c
Expand Up @@ -3,8 +3,8 @@
* License: GPL
* Online License Link: http://www.gnu.org/licenses/gpl.html
*
*\author Copyright © 2003-2009 Jaakko Keränen <jaakko.keranen@iki.fi>
*\author Copyright © 2006-2009 Daniel Swanson <danij@dengine.net>
*\author Copyright © 2003-2010 Jaakko Keränen <jaakko.keranen@iki.fi>
*\author Copyright © 2006-2010 Daniel Swanson <danij@dengine.net>
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
Expand All @@ -23,7 +23,7 @@
*/

/**
* r_seg.c: World segs.
* World segs.
*/

// HEADER FILES ------------------------------------------------------------
Expand All @@ -50,6 +50,19 @@

// CODE --------------------------------------------------------------------

void Seg_GetGeometryDeltasXY(seg_t* seg, boolean flipEdges,
vec3_t bottomLeft, vec3_t topLeft, vec3_t bottomRight, vec3_t topRight)
{
assert(seg && bottomLeft && topLeft && bottomRight && topRight);
{
vertex_t* vtx1 = seg->SG_v(flipEdges?1:0), *vtx2 = seg->SG_v(flipEdges?0:1);
V3_Set(bottomLeft, vtx1->V_pos[VX], vtx1->V_pos[VY], 0);
V3_Set(topLeft, vtx1->V_pos[VX], vtx1->V_pos[VY], 0);
V3_Set(bottomRight, vtx2->V_pos[VX], vtx2->V_pos[VY], 0);
V3_Set(topRight, vtx2->V_pos[VX], vtx2->V_pos[VY], 0);
}
}

/**
* Update the seg, property is selected by DMU_* name.
*/
Expand Down
32 changes: 8 additions & 24 deletions doomsday/engine/portable/src/rend_main.c
Expand Up @@ -2990,17 +2990,12 @@ static void prepareSkyMaskSurface(rendpolytype_t polyType, size_t count, rvertex
}
}

#define SQV_BL (rvertices[0])
#define SQV_TL (rvertices[1])
#define SQV_BR (rvertices[2])
#define SQV_TR (rvertices[3])

static int buildSkymaskQuad(rvertex_t* rvertices, rtexcoord_t* rtexcoords)
static int buildSkymaskQuad(rendpolytype_t polyType, rvertex_t* rvertices, rtexcoord_t* rtexcoords)
{
V3_Set(SQV_BL.pos, 0, 0, 0);
V3_Set(SQV_TL.pos, 0, 0, 0);
V3_Set(SQV_BR.pos, 0, 0, 0);
V3_Set(SQV_TR.pos, 0, 0, 0);
V3_Set(rvertices[0].pos, 0, 0, 0);
V3_Set(rvertices[1].pos, 0, 0, 0);
V3_Set(rvertices[2].pos, 0, 0, 0);
V3_Set(rvertices[3].pos, 0, 0, 0);

if(rtexcoords)
{
Expand All @@ -3017,12 +3012,6 @@ static int buildSkymaskQuad(rvertex_t* rvertices, rtexcoord_t* rtexcoords)
return 4;
}

static int buildSkymaskSegGeometry(rendpolytype_t polyType, rvertex_t* rvertices, rtexcoord_t* rtexcoords)
{
buildSkymaskQuad(rvertices, polyType == RPT_NORMAL? rtexcoords : 0);
return 4;
}

/*static __inline*/ void translateGeometryAxis(rendpolytype_t polyType, byte axis, float delta,
rvertex_t* rvertices, rtexcoord_t* rtexcoord, rcolor_t* rcolor, rcolor_t* shinyColor)
{
Expand Down Expand Up @@ -3448,7 +3437,7 @@ static void Rend_SSectSkyFixes(subsector_t* ssec)
*/

memset(rTU, 0, sizeof(rTU));
numVerts = buildSkymaskSegGeometry(polyType, rvertices, (polyType == RPT_NORMAL? rtexcoords : 0));
numVerts = buildSkymaskQuad(polyType, rvertices, (polyType == RPT_NORMAL? rtexcoords : 0));

segPtr = ssec->segs;
while(*segPtr)
Expand All @@ -3463,12 +3452,7 @@ static void Rend_SSectSkyFixes(subsector_t* ssec)
}

// Get the start and end vertices, left then right. Top and bottom.
{ vertex_t* vtx1 = seg->SG_v1, *vtx2 = seg->SG_v2;
V3_Set(edgeDeltasXY[0], vtx1->V_pos[VX], vtx1->V_pos[VY], 0);
V3_Set(edgeDeltasXY[1], vtx1->V_pos[VX], vtx1->V_pos[VY], 0);
V3_Set(edgeDeltasXY[2], vtx2->V_pos[VX], vtx2->V_pos[VY], 0);
V3_Set(edgeDeltasXY[3], vtx2->V_pos[VX], vtx2->V_pos[VY], 0);
}
Seg_GetGeometryDeltasXY(seg, false, edgeDeltasXY[0], edgeDeltasXY[1], edgeDeltasXY[2], edgeDeltasXY[3]);

setGeometryXY(polyType, edgeDeltasXY, numVerts, rvertices, (polyType == RPT_NORMAL? rtexcoords : 0), (polyType == RPT_NORMAL? rcolors : 0), (polyType == RPT_NORMAL? rcolorsShiny : 0));

Expand All @@ -3478,7 +3462,7 @@ static void Rend_SSectSkyFixes(subsector_t* ssec)
sector_t* frontsec = seg->SG_frontsector;
sector_t* backsec = seg->SG_backsector;
const float* ambientLightColor = R_GetSectorLightColor(frontsec);
float lightLevel = ssec->sector->lightLevel;
float lightLevel = frontsec->lightLevel;
plane_t* ffloor = frontsec->SP_plane(PLN_FLOOR);
plane_t* fceil = frontsec->SP_plane(PLN_CEILING);
plane_t* bceil = backsec ? backsec->SP_plane(PLN_CEILING) : 0;
Expand Down

0 comments on commit 51007d7

Please sign in to comment.