mirror of
https://github.com/ZDoom/raze-gles.git
synced 2024-11-10 14:52:01 +00:00
Merge branch 'master' of https://github.com/coelckers/Raze
This commit is contained in:
commit
cec7b006ca
11 changed files with 51 additions and 66 deletions
|
@ -1092,7 +1092,6 @@ void renderSetRollAngle(int32_t rolla);
|
|||
void tileInvalidate(int16_t tilenume, int32_t pal, int32_t how);
|
||||
|
||||
void polymost_glreset(void);
|
||||
void polymost_precache(int32_t dapicnum, int32_t dapalnum, int32_t datype);
|
||||
void PrecacheHardwareTextures(int nTile);
|
||||
void Polymost_Startup();
|
||||
|
||||
|
@ -1125,7 +1124,6 @@ EXTERN_CVAR(Bool, hw_useindexedcolortextures)
|
|||
EXTERN_CVAR(Bool, hw_parallaxskypanning)
|
||||
EXTERN_CVAR(Bool, r_voxels)
|
||||
|
||||
extern int32_t r_parallaxskyclamping;
|
||||
extern int32_t r_downsize;
|
||||
extern int32_t mdtims, omdtims;
|
||||
extern int32_t glrendmode;
|
||||
|
|
|
@ -199,7 +199,6 @@ struct voxmodel_t : public mdmodel_t
|
|||
|
||||
EXTERN mdmodel_t **models;
|
||||
|
||||
void updateanimation(md2model_t *m, tspriteptr_t tspr, uint8_t lpal);
|
||||
FTexture* mdloadskin(idmodel_t* m, int32_t number, int32_t pal, int32_t surf, bool* exact);
|
||||
void mdinit(void);
|
||||
void freeallmodels(void);
|
||||
|
|
|
@ -14,12 +14,10 @@ typedef struct { float r, g, b, a; } coltypef;
|
|||
extern bool playing_rr;
|
||||
extern int32_t rendmode;
|
||||
extern float gtang;
|
||||
extern float glox1, gloy1;
|
||||
extern float glox1;
|
||||
extern double gxyaspect;
|
||||
extern float grhalfxdown10x;
|
||||
extern float gcosang, gsinang, gcosang2, gsinang2;
|
||||
extern float gchang, gshang, gctang, gstang;
|
||||
extern float gvrcorrection;
|
||||
|
||||
extern void Polymost_prepare_loadboard(void);
|
||||
|
||||
|
@ -40,9 +38,6 @@ void polymost_completeMirror();
|
|||
int32_t polymost_maskWallHasTranslucency(uwalltype const * const wall);
|
||||
int32_t polymost_spriteHasTranslucency(tspritetype const * const tspr);
|
||||
|
||||
float* multiplyMatrix4f(float m0[4*4], const float m1[4*4]);
|
||||
|
||||
void polymost_glinit(void);
|
||||
void polymost_glreset(void);
|
||||
|
||||
enum {
|
||||
|
@ -117,14 +112,7 @@ enum {
|
|||
#define DAMETH_NARROW_MASKPROPS(dameth) (((dameth)&(~DAMETH_TRANS1))|(((dameth)&DAMETH_TRANS1)>>1))
|
||||
EDUKE32_STATIC_ASSERT(DAMETH_NARROW_MASKPROPS(DAMETH_MASKPROPS) == DAMETH_MASK);
|
||||
|
||||
extern int32_t globalnoeffect;
|
||||
extern int32_t drawingskybox;
|
||||
extern int32_t hicprecaching;
|
||||
extern float fcosglobalang, fsinglobalang;
|
||||
extern float fxdim, fydim, fydimen, fviewingrange;
|
||||
|
||||
extern char ptempbuf[MAXWALLSB<<1];
|
||||
|
||||
extern hitdata_t polymost_hitdata;
|
||||
|
||||
#endif
|
||||
|
|
|
@ -87,6 +87,21 @@ static FORCE_INLINE int32_t oldnonpow2(void)
|
|||
#endif
|
||||
}
|
||||
|
||||
bool playing_rr;
|
||||
bool playing_blood;
|
||||
int32_t rendmode=0;
|
||||
int32_t glrendmode = REND_POLYMOST;
|
||||
int32_t r_scenebrightness = 0;
|
||||
int32_t r_rortexture = 0;
|
||||
int32_t r_rortexturerange = 0;
|
||||
int32_t r_rorphase = 0;
|
||||
int32_t mdtims, omdtims;
|
||||
uint8_t alphahackarray[MAXTILES];
|
||||
int32_t polymostcenterhoriz = 100;
|
||||
|
||||
float fcosglobalang, fsinglobalang;
|
||||
float fxdim, fydim, fydimen, fviewingrange;
|
||||
|
||||
uint8_t globalr = 255, globalg = 255, globalb = 255;
|
||||
|
||||
int16_t pskybits_override = -1;
|
||||
|
|
|
@ -89,7 +89,7 @@ static int32_t tribufverts = 0;
|
|||
|
||||
static mdmodel_t *mdload(const char *);
|
||||
static void mdfree(mdmodel_t *);
|
||||
int32_t globalnoeffect=0;
|
||||
static int32_t globalnoeffect=0;
|
||||
|
||||
void freeallmodels()
|
||||
{
|
||||
|
@ -507,7 +507,7 @@ FTexture *mdloadskin(idmodel_t *m, int32_t number, int32_t pal, int32_t surf, bo
|
|||
}
|
||||
|
||||
//Note: even though it says md2model, it works for both md2model&md3model
|
||||
void updateanimation(md2model_t *m, tspriteptr_t tspr, uint8_t lpal)
|
||||
static void updateanimation(md2model_t *m, tspriteptr_t tspr, uint8_t lpal)
|
||||
{
|
||||
if (m->numframes < 2)
|
||||
{
|
||||
|
@ -904,7 +904,7 @@ static md2model_t *md2load(FileReader & fil, const char *filnam)
|
|||
//---------------------------------------- MD2 LIBRARY ENDS ----------------------------------------
|
||||
|
||||
// DICHOTOMIC RECURSIVE SORTING - USED BY MD3DRAW
|
||||
int32_t partition(uint16_t *indexes, float *depths, int32_t f, int32_t l)
|
||||
static int32_t partition(uint16_t *indexes, float *depths, int32_t f, int32_t l)
|
||||
{
|
||||
int32_t up = f, down = l;
|
||||
float piv = depths[f];
|
||||
|
@ -1842,7 +1842,7 @@ static void md3free(md3model_t *m)
|
|||
//---------------------------------------- MD3 LIBRARY ENDS ----------------------------------------
|
||||
//--------------------------------------- MD LIBRARY BEGINS ---------------------------------------
|
||||
|
||||
mdmodel_t *mdload(const char *filnam)
|
||||
static mdmodel_t *mdload(const char *filnam)
|
||||
{
|
||||
mdmodel_t *vm;
|
||||
int32_t i;
|
||||
|
@ -1905,7 +1905,7 @@ int32_t polymost_mddraw(tspriteptr_t tspr)
|
|||
return 0;
|
||||
}
|
||||
|
||||
void mdfree(mdmodel_t *vm)
|
||||
static void mdfree(mdmodel_t *vm)
|
||||
{
|
||||
if (vm->mdnum == 1) { voxfree((voxmodel_t *)vm); return; }
|
||||
if (vm->mdnum == 2 || vm->mdnum == 3) { md3free((md3model_t *)vm); return; }
|
||||
|
|
|
@ -63,18 +63,12 @@ CUSTOM_CVARD(Int, hw_anisotropy, 4, CVAR_ARCHIVE | CVAR_GLOBALCONFIG, "changes t
|
|||
// For testing - will be removed later.
|
||||
CVAR(Int, skytile, 0, 0)
|
||||
|
||||
bool playing_rr;
|
||||
bool playing_blood;
|
||||
|
||||
|
||||
int32_t rendmode=0;
|
||||
|
||||
typedef struct { float x, cy[2], fy[2]; int32_t tag; int16_t n, p, ctag, ftag; } vsptyp;
|
||||
#define VSPMAX 2048 //<- careful!
|
||||
static vsptyp vsp[VSPMAX];
|
||||
static int32_t gtag, viewportNodeCount;
|
||||
static float xbl, xbr, xbt, xbb;
|
||||
int32_t domost_rejectcount;
|
||||
static int32_t domost_rejectcount;
|
||||
#ifdef YAX_ENABLE
|
||||
typedef struct { float x, cy[2]; int32_t tag; int16_t n, p, ctag; } yax_vsptyp;
|
||||
static yax_vsptyp yax_vsp[YAX_MAXBUNCHES*2][VSPMAX];
|
||||
|
@ -92,8 +86,7 @@ static float dxb1[MAXWALLSB], dxb2[MAXWALLSB];
|
|||
|
||||
#define SOFTROTMAT 0
|
||||
|
||||
int32_t r_pogoDebug = 0;
|
||||
int32_t polymostcenterhoriz = 100;
|
||||
static int32_t r_pogoDebug = 0;
|
||||
|
||||
static float gviewxrange;
|
||||
static float ghoriz, ghoriz2;
|
||||
|
@ -103,16 +96,13 @@ float gyxscale, ghalfx, grhalfxdown10, grhalfxdown10x, ghalfy;
|
|||
float gcosang, gsinang, gcosang2, gsinang2;
|
||||
float gtang = 0.f;
|
||||
|
||||
float gchang = 0, gshang = 0, gctang = 0, gstang = 0;
|
||||
float gvrcorrection = 1.f;
|
||||
static float gchang = 0, gshang = 0, gctang = 0, gstang = 0;
|
||||
static float gvrcorrection = 1.f;
|
||||
|
||||
static vec3d_t xtex, ytex, otex, xtex2, ytex2, otex2;
|
||||
|
||||
float fcosglobalang, fsinglobalang;
|
||||
float fxdim, fydim, fydimen, fviewingrange;
|
||||
|
||||
float fsearchx, fsearchy, fsearchz;
|
||||
int psectnum, pwallnum, pbottomwall, pisbottomwall, psearchstat;
|
||||
static float fsearchx, fsearchy, fsearchz;
|
||||
static int psectnum, pwallnum, pbottomwall, pisbottomwall, psearchstat;
|
||||
|
||||
static int32_t drawpoly_srepeat = 0, drawpoly_trepeat = 0;
|
||||
#define MAX_DRAWPOLY_VERTS 8
|
||||
|
@ -120,23 +110,16 @@ static int32_t drawpoly_srepeat = 0, drawpoly_trepeat = 0;
|
|||
static int32_t lastglpolygonmode = 0; //FUK
|
||||
|
||||
static FHardwareTexture *polymosttext = 0;
|
||||
int32_t glrendmode = REND_POLYMOST;
|
||||
|
||||
int32_t r_scenebrightness = 0;
|
||||
|
||||
int32_t r_rortexture = 0;
|
||||
int32_t r_rortexturerange = 0;
|
||||
int32_t r_rorphase = 0;
|
||||
|
||||
int32_t r_yshearing = 0;
|
||||
static int32_t r_yshearing = 0;
|
||||
|
||||
// used for fogcalc
|
||||
static float fogresult, fogresult2;
|
||||
|
||||
char ptempbuf[MAXWALLSB<<1];
|
||||
static char ptempbuf[MAXWALLSB<<1];
|
||||
|
||||
// polymost ART sky control
|
||||
int32_t r_parallaxskyclamping = 1;
|
||||
static int32_t r_parallaxskyclamping = 1;
|
||||
|
||||
#define MIN_CACHETIME_PRINT 10
|
||||
|
||||
|
@ -144,12 +127,10 @@ int32_t r_parallaxskyclamping = 1;
|
|||
|
||||
#define Bfabsf fabsf
|
||||
|
||||
int32_t mdtims, omdtims;
|
||||
uint8_t alphahackarray[MAXTILES];
|
||||
int32_t drawingskybox = 0;
|
||||
int32_t hicprecaching = 0;
|
||||
static int32_t drawingskybox = 0;
|
||||
static int32_t hicprecaching = 0;
|
||||
|
||||
hitdata_t polymost_hitdata;
|
||||
static hitdata_t polymost_hitdata;
|
||||
|
||||
void polymost_outputGLDebugMessage(uint8_t severity, const char* format, ...)
|
||||
{
|
||||
|
@ -172,13 +153,14 @@ void gltexapplyprops(void)
|
|||
|
||||
//--------------------------------------------------------------------------------------------------
|
||||
|
||||
float glox1, gloy1, glox2, gloy2, gloyxscale, gloxyaspect, glohoriz2, glohorizcorrect, glotang;
|
||||
float glox1;
|
||||
static float gloy1, glox2, gloy2, gloyxscale, gloxyaspect, glohoriz2, glohorizcorrect, glotang;
|
||||
|
||||
//Use this for both initialization and uninitialization of OpenGL.
|
||||
static int32_t gltexcacnum = -1;
|
||||
|
||||
//in-place multiply m0=m0*m1
|
||||
float* multiplyMatrix4f(float m0[4*4], const float m1[4*4])
|
||||
static float* multiplyMatrix4f(float m0[4*4], const float m1[4*4])
|
||||
{
|
||||
float mR[4*4];
|
||||
|
||||
|
@ -242,7 +224,7 @@ void polymost_glreset()
|
|||
FileReader GetBaseResource(const char* fn);
|
||||
|
||||
// one-time initialization of OpenGL for polymost
|
||||
void polymost_glinit()
|
||||
static void polymost_glinit()
|
||||
{
|
||||
for (int basepalnum = 0; basepalnum < MAXBASEPALS; ++basepalnum)
|
||||
{
|
||||
|
@ -1831,7 +1813,7 @@ static inline int polymost_getclosestpointonwall(vec2_t const * const pos, int32
|
|||
return 0;
|
||||
}
|
||||
|
||||
float fgetceilzofslope(usectorptr_t sec, float dax, float day)
|
||||
static float fgetceilzofslope(usectorptr_t sec, float dax, float day)
|
||||
{
|
||||
if (!(sec->ceilingstat&2))
|
||||
return float(sec->ceilingz);
|
||||
|
@ -1849,7 +1831,7 @@ float fgetceilzofslope(usectorptr_t sec, float dax, float day)
|
|||
return float(sec->ceilingz) + (sec->ceilingheinum*j)/i;
|
||||
}
|
||||
|
||||
float fgetflorzofslope(usectorptr_t sec, float dax, float day)
|
||||
static float fgetflorzofslope(usectorptr_t sec, float dax, float day)
|
||||
{
|
||||
if (!(sec->floorstat&2))
|
||||
return float(sec->floorz);
|
||||
|
@ -1867,7 +1849,7 @@ float fgetflorzofslope(usectorptr_t sec, float dax, float day)
|
|||
return float(sec->floorz) + (sec->floorheinum*j)/i;
|
||||
}
|
||||
|
||||
void fgetzsofslope(usectorptr_t sec, float dax, float day, float* ceilz, float *florz)
|
||||
static void fgetzsofslope(usectorptr_t sec, float dax, float day, float* ceilz, float *florz)
|
||||
{
|
||||
*ceilz = float(sec->ceilingz); *florz = float(sec->floorz);
|
||||
|
||||
|
@ -3741,7 +3723,7 @@ typedef struct
|
|||
int8_t filler;
|
||||
} wallspriteinfo_t;
|
||||
|
||||
wallspriteinfo_t wsprinfo[MAXSPRITES];
|
||||
static wallspriteinfo_t wsprinfo[MAXSPRITES];
|
||||
|
||||
void Polymost_prepare_loadboard(void)
|
||||
{
|
||||
|
@ -3774,7 +3756,7 @@ static inline int32_t polymost_findwall(tspritetype const * const tspr, vec2_t c
|
|||
return closest;
|
||||
}
|
||||
|
||||
int32_t polymost_lintersect(int32_t x1, int32_t y1, int32_t x2, int32_t y2,
|
||||
static int32_t polymost_lintersect(int32_t x1, int32_t y1, int32_t x2, int32_t y2,
|
||||
int32_t x3, int32_t y3, int32_t x4, int32_t y4)
|
||||
{
|
||||
// p1 to p2 is a line segment
|
||||
|
@ -4626,7 +4608,7 @@ void polymost_initosdfuncs(void)
|
|||
{
|
||||
}
|
||||
|
||||
void polymost_precache(int32_t dapicnum, int32_t dapalnum, int32_t datype)
|
||||
static void polymost_precache(int32_t dapicnum, int32_t dapalnum, int32_t datype)
|
||||
{
|
||||
// dapicnum and dapalnum are like you'd expect
|
||||
// datype is 0 for a wall/floor/ceiling and 1 for a sprite
|
||||
|
|
|
@ -35,7 +35,7 @@ static voxmodel_t *gvox;
|
|||
|
||||
|
||||
//pitch must equal xsiz*4
|
||||
FHardwareTexture *gloadtex(const int32_t *picbuf, int32_t xsiz, int32_t ysiz, int32_t is8bit, int32_t dapal)
|
||||
static FHardwareTexture *gloadtex(const int32_t *picbuf, int32_t xsiz, int32_t ysiz, int32_t is8bit, int32_t dapal)
|
||||
{
|
||||
// Correct for GL's RGB order; also apply gamma here:
|
||||
const coltype *const pic = (const coltype *)picbuf;
|
||||
|
|
|
@ -162,7 +162,7 @@ void CollectSubdirectories(TArray<FString> &searchpath, const char *dirmatch)
|
|||
{
|
||||
findstate_t findstate;
|
||||
void* handle;
|
||||
if ((handle = I_FindFirst(AbsPath + "/*.*", &findstate)) != (void*)-1)
|
||||
if ((handle = I_FindFirst(AbsPath + "/*", &findstate)) != (void*)-1)
|
||||
{
|
||||
do
|
||||
{
|
||||
|
|
|
@ -180,6 +180,7 @@ void* I_FindFirst(const char* const filespec, findstate_t* const fileinfo)
|
|||
{
|
||||
pattern = slash+1;
|
||||
dir = FString(filespec, slash - filespec + 1);
|
||||
fileinfo->path = dir;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -234,7 +235,7 @@ int I_FindAttr(findstate_t* const fileinfo)
|
|||
dirent* const ent = fileinfo->namelist[fileinfo->current];
|
||||
bool isdir;
|
||||
|
||||
if (DirEntryExists(ent->d_name, &isdir))
|
||||
if (DirEntryExists(fileinfo->path + ent->d_name, &isdir))
|
||||
{
|
||||
return isdir ? FA_DIREC : 0;
|
||||
}
|
||||
|
|
|
@ -73,9 +73,10 @@ bool I_SetCursor(FTexture *);
|
|||
struct findstate_t
|
||||
{
|
||||
private:
|
||||
int count;
|
||||
FString path;
|
||||
struct dirent **namelist;
|
||||
int current;
|
||||
int count;
|
||||
|
||||
friend void *I_FindFirst(const char *filespec, findstate_t *fileinfo);
|
||||
friend int I_FindNext(void *handle, findstate_t *fileinfo);
|
||||
|
|
|
@ -304,6 +304,7 @@ void *I_FindFirst (const char *filespec, findstate_t *fileinfo)
|
|||
{
|
||||
pattern = slash+1;
|
||||
dir = FString(filespec, slash-filespec+1);
|
||||
fileinfo->path = dir;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -350,7 +351,7 @@ int I_FindAttr(findstate_t* const fileinfo)
|
|||
dirent* const ent = fileinfo->namelist[fileinfo->current];
|
||||
bool isdir;
|
||||
|
||||
if (DirEntryExists(ent->d_name, &isdir))
|
||||
if (DirEntryExists(fileinfo->path + ent->d_name, &isdir))
|
||||
{
|
||||
return isdir ? FA_DIREC : 0;
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue