mirror of
https://github.com/nzp-team/quakespasm.git
synced 2024-11-22 20:01:11 +00:00
Merge pull request #37 from tyleryoung88/main
This commit is contained in:
commit
f121d94357
6 changed files with 89 additions and 24 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -8,3 +8,4 @@ assets/vita/eboot.bin
|
|||
*.nacl
|
||||
*.sfo
|
||||
*.bin
|
||||
*.o
|
||||
|
|
|
@ -1166,9 +1166,9 @@ R_RenderScene
|
|||
void R_RenderScene (void)
|
||||
{
|
||||
R_SetupScene (); //johnfitz -- this does everything that should be done once per call to RenderScene
|
||||
|
||||
#ifndef VITA
|
||||
Fog_EnableGFog (); //johnfitz
|
||||
|
||||
#endif
|
||||
Sky_DrawSky (); //johnfitz
|
||||
|
||||
R_DrawWorld ();
|
||||
|
@ -1188,9 +1188,9 @@ void R_RenderScene (void)
|
|||
R_DrawParticles ();
|
||||
|
||||
QMB_DrawParticles();
|
||||
|
||||
#ifndef VITA
|
||||
Fog_DisableGFog (); //johnfitz
|
||||
|
||||
#endif
|
||||
R_DrawViewModel (); //johnfitz -- moved here from R_RenderView
|
||||
|
||||
R_DrawView2Model ();
|
||||
|
|
|
@ -1026,5 +1026,7 @@ void Sky_DrawSky (void)
|
|||
glDepthMask(1);
|
||||
glDepthFunc(GL_LEQUAL);
|
||||
}
|
||||
#ifndef VITA
|
||||
Fog_EnableGFog ();
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -1191,9 +1191,13 @@ void R_DrawAliasModel (entity_t *e)
|
|||
glBlendFunc (GL_ONE, GL_ONE);
|
||||
glDepthMask(GL_FALSE);
|
||||
glColor3f(entalpha,entalpha,entalpha);
|
||||
#ifndef VITA
|
||||
Fog_StartAdditive ();
|
||||
#endif
|
||||
GL_DrawAliasFrame (paliashdr, lerpdata);
|
||||
#ifndef VITA
|
||||
Fog_StopAdditive ();
|
||||
#endif
|
||||
glDepthMask(GL_TRUE);
|
||||
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||
glDisable(GL_BLEND);
|
||||
|
@ -1254,9 +1258,13 @@ void R_DrawAliasModel (entity_t *e)
|
|||
glDepthMask(GL_FALSE);
|
||||
shading = false;
|
||||
glColor3f(entalpha,entalpha,entalpha);
|
||||
#ifndef VITA
|
||||
Fog_StartAdditive ();
|
||||
#endif
|
||||
GL_DrawAliasFrame (paliashdr, lerpdata);
|
||||
#ifndef VITA
|
||||
Fog_StopAdditive ();
|
||||
#endif
|
||||
glDepthMask(GL_TRUE);
|
||||
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||
glDisable(GL_BLEND);
|
||||
|
@ -1273,9 +1281,13 @@ void R_DrawAliasModel (entity_t *e)
|
|||
glEnable(GL_BLEND);
|
||||
glBlendFunc (GL_ONE, GL_ONE);
|
||||
glDepthMask(GL_FALSE);
|
||||
#ifndef VITA
|
||||
Fog_StartAdditive ();
|
||||
#endif
|
||||
GL_DrawAliasFrame (paliashdr, lerpdata);
|
||||
#ifndef VITA
|
||||
Fog_StopAdditive ();
|
||||
#endif
|
||||
glDepthMask(GL_TRUE);
|
||||
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
|
||||
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||
|
@ -1290,9 +1302,13 @@ void R_DrawAliasModel (entity_t *e)
|
|||
glDepthMask(GL_FALSE);
|
||||
shading = false;
|
||||
glColor3f(entalpha,entalpha,entalpha);
|
||||
#ifndef VITA
|
||||
Fog_StartAdditive ();
|
||||
#endif
|
||||
GL_DrawAliasFrame (paliashdr, lerpdata);
|
||||
#ifndef VITA
|
||||
Fog_StopAdditive ();
|
||||
#endif
|
||||
glDepthMask(GL_TRUE);
|
||||
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||
glDisable(GL_BLEND);
|
||||
|
@ -1331,9 +1347,13 @@ void R_DrawAliasModel (entity_t *e)
|
|||
glDepthMask(GL_FALSE);
|
||||
shading = false;
|
||||
glColor3f(entalpha,entalpha,entalpha);
|
||||
#ifndef VITA
|
||||
Fog_StartAdditive ();
|
||||
#endif
|
||||
GL_DrawAliasFrame (paliashdr, lerpdata);
|
||||
#ifndef VITA
|
||||
Fog_StopAdditive ();
|
||||
#endif
|
||||
glDepthMask(GL_TRUE);
|
||||
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||
glDisable(GL_BLEND);
|
||||
|
|
|
@ -370,10 +370,14 @@ void R_DrawSequentialPoly (msurface_t *s)
|
|||
else //case 3: texture in one pass, lightmap in second pass using 2x modulation blend func, fog in third pass
|
||||
{
|
||||
//first pass -- texture with no fog
|
||||
#ifndef VITA
|
||||
Fog_DisableGFog ();
|
||||
#endif VITA
|
||||
GL_Bind (t->gltexture);
|
||||
DrawGLPoly (s->polys);
|
||||
#ifndef VITA
|
||||
Fog_EnableGFog ();
|
||||
#endif
|
||||
rs_brushpasses++;
|
||||
|
||||
//second pass -- lightmap with black fog, modulate blended
|
||||
|
@ -382,7 +386,9 @@ void R_DrawSequentialPoly (msurface_t *s)
|
|||
glDepthMask (GL_FALSE);
|
||||
glEnable (GL_BLEND);
|
||||
glBlendFunc(GL_DST_COLOR, GL_SRC_COLOR); //2x modulate
|
||||
#ifndef VITA
|
||||
Fog_StartAdditive ();
|
||||
#endif
|
||||
#ifdef VITA
|
||||
glBegin(GL_TRIANGLE_FAN);
|
||||
#else
|
||||
|
@ -395,10 +401,13 @@ void R_DrawSequentialPoly (msurface_t *s)
|
|||
glVertex3fv (v);
|
||||
}
|
||||
glEnd ();
|
||||
#ifndef VITA
|
||||
Fog_StopAdditive ();
|
||||
#endif
|
||||
rs_brushpasses++;
|
||||
|
||||
//third pass -- black geo with normal fog, additive blended
|
||||
#ifndef VITA
|
||||
if (Fog_GetDensity() > 0)
|
||||
{
|
||||
glBlendFunc(GL_ONE, GL_ONE); //add
|
||||
|
@ -409,6 +418,7 @@ void R_DrawSequentialPoly (msurface_t *s)
|
|||
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
|
||||
rs_brushpasses++;
|
||||
}
|
||||
#endif
|
||||
|
||||
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||
glDisable (GL_BLEND);
|
||||
|
@ -451,10 +461,14 @@ void R_DrawSequentialPoly (msurface_t *s)
|
|||
else //case 6: texture in one pass, lightmap in a second pass, fog in third pass
|
||||
{
|
||||
//first pass -- texture with no fog
|
||||
#ifndef VITA
|
||||
Fog_DisableGFog ();
|
||||
#endif
|
||||
GL_Bind (t->gltexture);
|
||||
DrawGLPoly (s->polys);
|
||||
#ifndef VITA
|
||||
Fog_EnableGFog ();
|
||||
#endif
|
||||
rs_brushpasses++;
|
||||
|
||||
//second pass -- lightmap with black fog, modulate blended
|
||||
|
@ -463,7 +477,9 @@ void R_DrawSequentialPoly (msurface_t *s)
|
|||
glDepthMask (GL_FALSE);
|
||||
glEnable (GL_BLEND);
|
||||
glBlendFunc (GL_ZERO, GL_SRC_COLOR); //modulate
|
||||
#ifndef VITA
|
||||
Fog_StartAdditive ();
|
||||
#endif
|
||||
#ifdef VITA
|
||||
glBegin(GL_TRIANGLE_FAN);
|
||||
#else
|
||||
|
@ -476,9 +492,11 @@ void R_DrawSequentialPoly (msurface_t *s)
|
|||
glVertex3fv (v);
|
||||
}
|
||||
glEnd ();
|
||||
#ifndef VITA
|
||||
Fog_StopAdditive ();
|
||||
#endif
|
||||
rs_brushpasses++;
|
||||
|
||||
#ifndef VITA
|
||||
//third pass -- black geo with normal fog, additive blended
|
||||
if (Fog_GetDensity() > 0)
|
||||
{
|
||||
|
@ -490,7 +508,7 @@ void R_DrawSequentialPoly (msurface_t *s)
|
|||
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
|
||||
rs_brushpasses++;
|
||||
}
|
||||
|
||||
#endif
|
||||
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||
glDisable (GL_BLEND);
|
||||
glDepthMask (GL_TRUE);
|
||||
|
@ -517,9 +535,13 @@ fullbrights:
|
|||
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
|
||||
glColor3f (entalpha, entalpha, entalpha);
|
||||
GL_Bind (t->fullbright);
|
||||
#ifndef VITA
|
||||
Fog_StartAdditive ();
|
||||
#endif
|
||||
DrawGLPoly (s->polys);
|
||||
#ifndef VITA
|
||||
Fog_StopAdditive ();
|
||||
#endif
|
||||
glColor3f(1, 1, 1);
|
||||
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
|
||||
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||
|
|
|
@ -1197,24 +1197,32 @@ void R_DrawTextureChains (qmodel_t *model, entity_t *ent, texchain_t chain)
|
|||
//to make fog work with multipass lightmapping, need to do one pass
|
||||
//with no fog, one modulate pass with black fog, and one additive
|
||||
//pass with black geometry and normal fog
|
||||
#ifndef VITA
|
||||
Fog_DisableGFog ();
|
||||
#endif
|
||||
R_DrawTextureChains_TextureOnly (model, ent, chain);
|
||||
#ifndef VITA
|
||||
Fog_EnableGFog ();
|
||||
#endif
|
||||
glDepthMask (GL_FALSE);
|
||||
glEnable (GL_BLEND);
|
||||
glBlendFunc (GL_DST_COLOR, GL_SRC_COLOR); //2x modulate
|
||||
#ifndef VITA
|
||||
Fog_StartAdditive ();
|
||||
#endif
|
||||
R_DrawLightmapChains ();
|
||||
#ifndef VITA
|
||||
Fog_StopAdditive ();
|
||||
//if (Fog_GetDensity() > 0)
|
||||
//{
|
||||
//glBlendFunc(GL_ONE, GL_ONE); //add
|
||||
//glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
|
||||
//glColor3f(0,0,0);
|
||||
//R_DrawTextureChains_TextureOnly (model, ent, chain);
|
||||
//glColor3f(1,1,1);
|
||||
//glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
|
||||
//}
|
||||
if (Fog_GetDensity() > 0)
|
||||
{
|
||||
glBlendFunc(GL_ONE, GL_ONE); //add
|
||||
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
|
||||
glColor3f(0,0,0);
|
||||
R_DrawTextureChains_TextureOnly (model, ent, chain);
|
||||
glColor3f(1,1,1);
|
||||
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
|
||||
}
|
||||
#endif
|
||||
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||
glDisable (GL_BLEND);
|
||||
glDepthMask (GL_TRUE);
|
||||
|
@ -1239,24 +1247,32 @@ void R_DrawTextureChains (qmodel_t *model, entity_t *ent, texchain_t chain)
|
|||
//to make fog work with multipass lightmapping, need to do one pass
|
||||
//with no fog, one modulate pass with black fog, and one additive
|
||||
//pass with black geometry and normal fog
|
||||
#ifndef VITA
|
||||
Fog_DisableGFog ();
|
||||
#endif
|
||||
R_DrawTextureChains_TextureOnly (model, ent, chain);
|
||||
#ifndef VITA
|
||||
Fog_EnableGFog ();
|
||||
#endif
|
||||
glDepthMask (GL_FALSE);
|
||||
glEnable (GL_BLEND);
|
||||
glBlendFunc(GL_ZERO, GL_SRC_COLOR); //modulate
|
||||
#ifndef VITA
|
||||
Fog_StartAdditive ();
|
||||
#endif
|
||||
R_DrawLightmapChains ();
|
||||
#ifndef VITA
|
||||
Fog_StopAdditive ();
|
||||
//if (Fog_GetDensity() > 0)
|
||||
//{
|
||||
//glBlendFunc(GL_ONE, GL_ONE); //add
|
||||
//glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
|
||||
//glColor3f(0,0,0);
|
||||
//R_DrawTextureChains_TextureOnly (model, ent, chain);
|
||||
//glColor3f(1,1,1);
|
||||
//glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
|
||||
//}
|
||||
if (Fog_GetDensity() > 0)
|
||||
{
|
||||
glBlendFunc(GL_ONE, GL_ONE); //add
|
||||
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
|
||||
glColor3f(0,0,0);
|
||||
R_DrawTextureChains_TextureOnly (model, ent, chain);
|
||||
glColor3f(1,1,1);
|
||||
glTexEnvf(GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
|
||||
}
|
||||
#endif
|
||||
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||
glDisable (GL_BLEND);
|
||||
glDepthMask (GL_TRUE);
|
||||
|
@ -1273,9 +1289,13 @@ fullbrights:
|
|||
glBlendFunc (GL_ONE, GL_ONE);
|
||||
glTexEnvf (GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_MODULATE);
|
||||
glColor3f (entalpha, entalpha, entalpha);
|
||||
#ifndef VITA
|
||||
Fog_StartAdditive ();
|
||||
#endif
|
||||
R_DrawTextureChains_Glow (model, ent, chain);
|
||||
#ifndef VITA
|
||||
Fog_StopAdditive ();
|
||||
#endif
|
||||
glColor3f (1, 1, 1);
|
||||
glTexEnvf (GL_TEXTURE_ENV, GL_TEXTURE_ENV_MODE, GL_REPLACE);
|
||||
glBlendFunc (GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
|
||||
|
|
Loading…
Reference in a new issue