From 2e447a3c1ddbcbff634949b5dc86527ed8905515 Mon Sep 17 00:00:00 2001 From: terminx Date: Mon, 21 Jul 2008 13:59:10 +0000 Subject: [PATCH] git-svn-id: https://svn.eduke32.com/eduke32@884 1a8010ca-5511-0410-912e-c29ae57300e0 --- polymer/build/src/polymost.c | 106 ++++++++++++++++------------------- 1 file changed, 48 insertions(+), 58 deletions(-) diff --git a/polymer/build/src/polymost.c b/polymer/build/src/polymost.c index 86cdc7410..9cd0b8da2 100644 --- a/polymer/build/src/polymost.c +++ b/polymer/build/src/polymost.c @@ -4431,14 +4431,14 @@ int polymost_checkcoordinates(int x, int y, spritetype *tspr) updatesector(tspr->x+x,tspr->y+y,&datempsectnum); if (datempsectnum == -1) return 0; + /* if (cansee(globalposx, globalposy, globalposz, globalcursectnum, + tspr->x+x, tspr->y+y, sector[datempsectnum].floorz, datempsectnum)) + return 1; + if (cansee(globalposx, globalposy, globalposz, globalcursectnum, + tspr->x+x, tspr->y+y, sector[datempsectnum].ceilingz, datempsectnum)) + return 1; */ if (cansee(globalposx, globalposy, globalposz, globalcursectnum, - tspr->x+x, tspr->y+y, sector[datempsectnum].floorz, datempsectnum)) - return 1; - if (cansee(globalposx, globalposy, globalposz, globalcursectnum, - tspr->x+x, tspr->y+y, sector[datempsectnum].ceilingz, datempsectnum)) - return 1; - if (cansee(globalposx, globalposy, globalposz, globalcursectnum, - tspr->x+x, tspr->y+y, tspr->z, datempsectnum)) + tspr->x+x, tspr->y+y, tspr->z, datempsectnum)) return 1; return 0; } @@ -4453,7 +4453,7 @@ void polymost_drawsprite(int snum) int posx,posy; int oldsizx, oldsizy; int tsizx, tsizy; - + tspr = tspriteptr[snum]; if (tspr->owner < 0 || tspr->picnum < 0) return; @@ -4504,36 +4504,25 @@ void polymost_drawsprite(int snum) if (totalclock < lastcullcheck[tspr->owner]) break; cullmodel[tspr->owner] = 1; - if (cansee(globalposx, globalposy, sector[globalcursectnum].ceilingz, - globalcursectnum, tspr->x, tspr->y, tspr->z, tspr->sectnum)) - { cullmodel[tspr->owner] = 0; break; } + if (cansee(globalposx, globalposy, sector[globalcursectnum].ceilingz, globalcursectnum, + tspr->x, tspr->y, tspr->z, tspr->sectnum)) + { cullmodel[tspr->owner] = 0; break; } if (cansee(globalposx, globalposy, globalposz, globalcursectnum, - tspr->x, tspr->y, tspr->z-((tilesizy[tspr->picnum]*tspr->yrepeat)<<2), - tspr->sectnum)) - { cullmodel[tspr->owner] = 0; break; } + tspr->x, tspr->y, tspr->z-((tilesizy[tspr->picnum]*tspr->yrepeat)<<2),tspr->sectnum)) + { cullmodel[tspr->owner] = 0; break; } if (cansee(globalposx, globalposy, globalposz, globalcursectnum, - tspr->x, tspr->y, tspr->z, - tspr->sectnum)) - { cullmodel[tspr->owner] = 0; break; } + tspr->x, tspr->y, tspr->z,tspr->sectnum)) + { cullmodel[tspr->owner] = 0; break; } if (cansee(globalposx, globalposy, globalposz, globalcursectnum, - tspr->x, tspr->y, globalposz, - tspr->sectnum)) - { cullmodel[tspr->owner] = 0; break; } - if (cansee(globalposx, globalposy, sector[globalcursectnum].floorz, - globalcursectnum, tspr->x, tspr->y, tspr->z, tspr->sectnum)) - { cullmodel[tspr->owner] = 0; break; } - - if (cansee(globalposx, globalposy, globalposz+6144, globalcursectnum, - tspr->x, tspr->y, tspr->z, tspr->sectnum)) - { cullmodel[tspr->owner] = 0; break; } - if (cansee(globalposx, globalposy, globalposz-6144, globalcursectnum, - tspr->x, tspr->y, tspr->z, tspr->sectnum)) - { cullmodel[tspr->owner] = 0; break; } + tspr->x, tspr->y, globalposz,tspr->sectnum)) + { cullmodel[tspr->owner] = 0; break; } + if (cansee(globalposx, globalposy, sector[globalcursectnum].floorz, globalcursectnum, + tspr->x, tspr->y, tspr->z, tspr->sectnum)) + { cullmodel[tspr->owner] = 0; break; } if (polymost_checkcoordinates(0, 0, tspr)) { cullmodel[tspr->owner] = 0; break; } - i = 768; if (polymost_checkcoordinates(-i, 0, tspr)) { cullmodel[tspr->owner] = 0; break; } @@ -4554,10 +4543,11 @@ void polymost_drawsprite(int snum) if (polymost_checkcoordinates(i, -i, tspr)) { cullmodel[tspr->owner] = 0; break; } break; - } while (1); + } + while (1); if (totalclock >= lastcullcheck[tspr->owner]) lastcullcheck[tspr->owner] = totalclock + CULL_DELAY; - } + } else cullmodel[tspr->owner] = 0; if (cullmodel[tspr->owner]) break; if (mddraw(tspr)) return; @@ -6005,31 +5995,31 @@ static int dumptexturedefs(const osdfuncparm_t *parm) void polymost_initosdfuncs(void) { #ifdef USE_OPENGL - OSD_RegisterFunction("r_animsmoothing","r_animsmoothing: enable/disable model animation smoothing",osdcmd_polymostvars); - OSD_RegisterFunction("r_cullobstructedmodels","r_cullobstructedmodels: enable/disable hack to cull \"obstructed\" models",osdcmd_polymostvars); - OSD_RegisterFunction("r_curpeel","r_curpeel: allows to display one depth layer at a time (for development purposes)",osdcmd_polymostvars); - OSD_RegisterFunction("r_depthpeeling","r_depthpeeling: enable/disable order-independant transparency",osdcmd_polymostvars); - OSD_RegisterFunction("r_detailmapping","r_detailmapping: enable/disable detail mapping",osdcmd_polymostvars); - OSD_RegisterFunction("r_fullbright","r_fullbright: enable/disable fullbright textures",osdcmd_polymostvars); - OSD_RegisterFunction("r_glowmapping","r_glowmapping: enable/disable glow mapping",osdcmd_polymostvars); - OSD_RegisterFunction("r_multisample","r_multisample: sets the number of samples used for antialiasing (0 = off)",osdcmd_polymostvars); - OSD_RegisterFunction("r_nvmultisamplehint","r_nvmultisamplehint: enable/disable Nvidia multisampling hinting",osdcmd_polymostvars); - OSD_RegisterFunction("r_parallaxskyclamping","r_parallaxskyclamping: enable/disable parallaxed floor/ceiling sky texture clamping",osdcmd_polymostvars); - OSD_RegisterFunction("r_parallaxskypanning","r_parallaxskypanning: enable/disable parallaxed floor/ceiling panning when drawing a parallaxed sky",osdcmd_polymostvars); - OSD_RegisterFunction("r_peelscount","r_peelscount: sets the number of depth layers for depth peeling",osdcmd_polymostvars); - OSD_RegisterFunction("r_polygonmode","r_polygonmode: debugging feature",osdcmd_polymostvars); //FUK - OSD_RegisterFunction("r_redbluemode","r_redbluemode: enable/disable experimental OpenGL red-blue glasses mode",osdcmd_polymostvars); - OSD_RegisterFunction("r_shadescale","r_shadescale: multiplier for lighting",osdcmd_polymostvars); - OSD_RegisterFunction("r_texcachecompression","r_texcachecompression: enable/disable compression of files in the OpenGL compressed texture cache",osdcmd_polymostvars); - OSD_RegisterFunction("r_texcache","r_texcache: enable/disable OpenGL compressed texture cache",osdcmd_polymostvars); - OSD_RegisterFunction("r_texcompr","r_texcompr: enable/disable OpenGL texture compression",osdcmd_polymostvars); - OSD_RegisterFunction("r_textureanisotropy", "r_textureanisotropy: changes the OpenGL texture anisotropy setting", gltextureanisotropy); - OSD_RegisterFunction("r_texturemaxsize","r_texturemaxsize: changes the maximum OpenGL texture size limit",osdcmd_polymostvars); - OSD_RegisterFunction("r_texturemiplevel","r_texturemiplevel: changes the highest OpenGL mipmap level used",osdcmd_polymostvars); - OSD_RegisterFunction("r_texturemode", "r_texturemode: changes the texture filtering settings", gltexturemode); - OSD_RegisterFunction("r_vbocount","r_vbocount: sets the number of Vertex Buffer Objects to use when drawing models",osdcmd_polymostvars); - OSD_RegisterFunction("r_vbos","r_vbos: enable/disable using Vertex Buffer Objects when drawing models",osdcmd_polymostvars); - OSD_RegisterFunction("r_vertexarrays","r_vertexarrays: enable/disable using vertex arrays when drawing models",osdcmd_polymostvars); + OSD_RegisterFunction("r_animsmoothing","r_animsmoothing: enable/disable model animation smoothing",osdcmd_polymostvars); + OSD_RegisterFunction("r_cullobstructedmodels","r_cullobstructedmodels: enable/disable hack to cull \"obstructed\" models",osdcmd_polymostvars); + OSD_RegisterFunction("r_curpeel","r_curpeel: allows to display one depth layer at a time (for development purposes)",osdcmd_polymostvars); + OSD_RegisterFunction("r_depthpeeling","r_depthpeeling: enable/disable order-independant transparency",osdcmd_polymostvars); + OSD_RegisterFunction("r_detailmapping","r_detailmapping: enable/disable detail mapping",osdcmd_polymostvars); + OSD_RegisterFunction("r_fullbright","r_fullbright: enable/disable fullbright textures",osdcmd_polymostvars); + OSD_RegisterFunction("r_glowmapping","r_glowmapping: enable/disable glow mapping",osdcmd_polymostvars); + OSD_RegisterFunction("r_multisample","r_multisample: sets the number of samples used for antialiasing (0 = off)",osdcmd_polymostvars); + OSD_RegisterFunction("r_nvmultisamplehint","r_nvmultisamplehint: enable/disable Nvidia multisampling hinting",osdcmd_polymostvars); + OSD_RegisterFunction("r_parallaxskyclamping","r_parallaxskyclamping: enable/disable parallaxed floor/ceiling sky texture clamping",osdcmd_polymostvars); + OSD_RegisterFunction("r_parallaxskypanning","r_parallaxskypanning: enable/disable parallaxed floor/ceiling panning when drawing a parallaxed sky",osdcmd_polymostvars); + OSD_RegisterFunction("r_peelscount","r_peelscount: sets the number of depth layers for depth peeling",osdcmd_polymostvars); + OSD_RegisterFunction("r_polygonmode","r_polygonmode: debugging feature",osdcmd_polymostvars); //FUK + OSD_RegisterFunction("r_redbluemode","r_redbluemode: enable/disable experimental OpenGL red-blue glasses mode",osdcmd_polymostvars); + OSD_RegisterFunction("r_shadescale","r_shadescale: multiplier for lighting",osdcmd_polymostvars); + OSD_RegisterFunction("r_texcachecompression","r_texcachecompression: enable/disable compression of files in the OpenGL compressed texture cache",osdcmd_polymostvars); + OSD_RegisterFunction("r_texcache","r_texcache: enable/disable OpenGL compressed texture cache",osdcmd_polymostvars); + OSD_RegisterFunction("r_texcompr","r_texcompr: enable/disable OpenGL texture compression",osdcmd_polymostvars); + OSD_RegisterFunction("r_textureanisotropy", "r_textureanisotropy: changes the OpenGL texture anisotropy setting", gltextureanisotropy); + OSD_RegisterFunction("r_texturemaxsize","r_texturemaxsize: changes the maximum OpenGL texture size limit",osdcmd_polymostvars); + OSD_RegisterFunction("r_texturemiplevel","r_texturemiplevel: changes the highest OpenGL mipmap level used",osdcmd_polymostvars); + OSD_RegisterFunction("r_texturemode", "r_texturemode: changes the texture filtering settings", gltexturemode); + OSD_RegisterFunction("r_vbocount","r_vbocount: sets the number of Vertex Buffer Objects to use when drawing models",osdcmd_polymostvars); + OSD_RegisterFunction("r_vbos","r_vbos: enable/disable using Vertex Buffer Objects when drawing models",osdcmd_polymostvars); + OSD_RegisterFunction("r_vertexarrays","r_vertexarrays: enable/disable using vertex arrays when drawing models",osdcmd_polymostvars); #endif OSD_RegisterFunction("r_models","r_models: enable/disable model rendering in >8-bit mode",osdcmd_polymostvars); OSD_RegisterFunction("r_hightile","r_hightile: enable/disable hightile texture rendering in >8-bit mode",osdcmd_polymostvars);