Revert "Merge branch 'software-clownery' into 'master'"
This reverts merge request !578
This commit is contained in:
parent
c460775cd7
commit
b41cd59e51
|
@ -416,7 +416,9 @@ fixed_t P_SegLength(seg_t *seg)
|
||||||
return FixedHypot(dx, dy)<<1;
|
return FixedHypot(dx, dy)<<1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifdef HWRENDER
|
||||||
/** Computes the length of a seg as a float.
|
/** Computes the length of a seg as a float.
|
||||||
|
* This is needed for OpenGL.
|
||||||
*
|
*
|
||||||
* \param seg Seg to compute length for.
|
* \param seg Seg to compute length for.
|
||||||
* \return Length as a float.
|
* \return Length as a float.
|
||||||
|
@ -431,6 +433,7 @@ static inline float P_SegLengthFloat(seg_t *seg)
|
||||||
|
|
||||||
return (float)hypot(dx, dy);
|
return (float)hypot(dx, dy);
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
/** Loads the SEGS resource from a level.
|
/** Loads the SEGS resource from a level.
|
||||||
*
|
*
|
||||||
|
@ -457,10 +460,10 @@ static void P_LoadRawSegs(UINT8 *data, size_t i)
|
||||||
li->v2 = &vertexes[SHORT(ml->v2)];
|
li->v2 = &vertexes[SHORT(ml->v2)];
|
||||||
|
|
||||||
li->length = P_SegLength(li);
|
li->length = P_SegLength(li);
|
||||||
li->flength = P_SegLengthFloat(li);
|
|
||||||
#ifdef HWRENDER
|
#ifdef HWRENDER
|
||||||
if (rendermode == render_opengl)
|
if (rendermode == render_opengl)
|
||||||
{
|
{
|
||||||
|
li->flength = P_SegLengthFloat(li);
|
||||||
//Hurdler: 04/12/2000: for now, only used in hardware mode
|
//Hurdler: 04/12/2000: for now, only used in hardware mode
|
||||||
li->lightmaps = NULL; // list of static lightmap for this seg
|
li->lightmaps = NULL; // list of static lightmap for this seg
|
||||||
}
|
}
|
||||||
|
|
|
@ -410,7 +410,7 @@ static void R_AddLine(seg_t *line)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
// Global angle needed by segcalc.
|
// Global angle needed by segcalc.
|
||||||
rw.angle1 = angle1;
|
rw_angle1 = angle1;
|
||||||
angle1 -= viewangle;
|
angle1 -= viewangle;
|
||||||
angle2 -= viewangle;
|
angle2 -= viewangle;
|
||||||
|
|
||||||
|
|
|
@ -582,12 +582,11 @@ typedef struct seg_s
|
||||||
sector_t *backsector;
|
sector_t *backsector;
|
||||||
|
|
||||||
fixed_t length; // precalculated seg length
|
fixed_t length; // precalculated seg length
|
||||||
float flength; // ditto but float
|
|
||||||
|
|
||||||
#ifdef HWRENDER
|
#ifdef HWRENDER
|
||||||
// new pointers so that AdjustSegs doesn't mess with v1/v2
|
// new pointers so that AdjustSegs doesn't mess with v1/v2
|
||||||
void *pv1; // polyvertex_t
|
void *pv1; // polyvertex_t
|
||||||
void *pv2; // polyvertex_t
|
void *pv2; // polyvertex_t
|
||||||
|
float flength; // length of the seg, used by hardware renderer
|
||||||
|
|
||||||
lightmap_t *lightmaps; // for static lightmap
|
lightmap_t *lightmaps; // for static lightmap
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -366,7 +366,7 @@ angle_t R_PointToAngleEx(INT32 x2, INT32 y2, INT32 x1, INT32 y1)
|
||||||
// R_ScaleFromGlobalAngle
|
// R_ScaleFromGlobalAngle
|
||||||
// Returns the texture mapping scale for the current line (horizontal span)
|
// Returns the texture mapping scale for the current line (horizontal span)
|
||||||
// at the given angle.
|
// at the given angle.
|
||||||
// rw.distance must be calculated first.
|
// rw_distance must be calculated first.
|
||||||
//
|
//
|
||||||
// killough 5/2/98: reformatted, cleaned up
|
// killough 5/2/98: reformatted, cleaned up
|
||||||
//
|
//
|
||||||
|
@ -374,8 +374,8 @@ angle_t R_PointToAngleEx(INT32 x2, INT32 y2, INT32 x1, INT32 y1)
|
||||||
fixed_t R_ScaleFromGlobalAngle(angle_t visangle)
|
fixed_t R_ScaleFromGlobalAngle(angle_t visangle)
|
||||||
{
|
{
|
||||||
angle_t anglea = ANGLE_90 + (visangle-viewangle);
|
angle_t anglea = ANGLE_90 + (visangle-viewangle);
|
||||||
angle_t angleb = ANGLE_90 + (visangle-rw.normalangle);
|
angle_t angleb = ANGLE_90 + (visangle-rw_normalangle);
|
||||||
fixed_t den = FixedMul(rw.distance, FINESINE(anglea>>ANGLETOFINESHIFT));
|
fixed_t den = FixedMul(rw_distance, FINESINE(anglea>>ANGLETOFINESHIFT));
|
||||||
// proff 11/06/98: Changed for high-res
|
// proff 11/06/98: Changed for high-res
|
||||||
fixed_t num = FixedMul(projectiony, FINESINE(angleb>>ANGLETOFINESHIFT));
|
fixed_t num = FixedMul(projectiony, FINESINE(angleb>>ANGLETOFINESHIFT));
|
||||||
|
|
||||||
|
|
4761
src/r_segs.c
4761
src/r_segs.c
File diff suppressed because it is too large
Load Diff
|
@ -93,41 +93,10 @@ extern angle_t doubleclipangle;
|
||||||
extern INT32 viewangletox[FINEANGLES/2];
|
extern INT32 viewangletox[FINEANGLES/2];
|
||||||
extern angle_t xtoviewangle[MAXVIDWIDTH+1];
|
extern angle_t xtoviewangle[MAXVIDWIDTH+1];
|
||||||
|
|
||||||
// Wall rendering
|
extern fixed_t rw_distance;
|
||||||
typedef struct
|
extern angle_t rw_normalangle;
|
||||||
{
|
|
||||||
INT32 x, stopx;
|
|
||||||
angle_t centerangle;
|
|
||||||
fixed_t offset;
|
|
||||||
fixed_t offset2; // for splats
|
|
||||||
fixed_t scale, scalestep;
|
|
||||||
fixed_t midtexturemid, toptexturemid, bottomtexturemid;
|
|
||||||
#ifdef ESLOPE
|
|
||||||
fixed_t toptextureslide, midtextureslide, bottomtextureslide; // Defines how to adjust Y offsets along the wall for slopes
|
|
||||||
fixed_t midtextureback, midtexturebackslide; // Values for masked midtexture height calculation
|
|
||||||
#endif
|
|
||||||
fixed_t distance;
|
|
||||||
angle_t normalangle;
|
|
||||||
angle_t angle1; // angle to line origin
|
|
||||||
|
|
||||||
// for masked segs and thick sides
|
// angle to line origin
|
||||||
INT32 texnum;
|
extern angle_t rw_angle1;
|
||||||
void (*colfunc_2s) (column_t *);
|
|
||||||
INT32 column2s_length; // column->length : for multi-patch on 2sided wall = texture->height
|
|
||||||
|
|
||||||
// masked segs
|
|
||||||
INT32 maskedrepeat;
|
|
||||||
|
|
||||||
// thick sides
|
|
||||||
ffloor_t *pfloor;
|
|
||||||
#ifdef ESLOPE
|
|
||||||
// Render FOF sides kinda like normal sides, with the frac and step and everything
|
|
||||||
// NOTE: INT64 instead of fixed_t because overflow concerns
|
|
||||||
INT64 top_frac, top_step, bottom_frac, bottom_step;
|
|
||||||
fixed_t ffloortextureslide;
|
|
||||||
fixed_t left_top, left_bottom; // needed here for slope skewing
|
|
||||||
#endif
|
|
||||||
} renderwall_t;
|
|
||||||
extern renderwall_t rw;
|
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue