mirror of
https://github.com/FWGS/xash3d-fwgs
synced 2024-11-22 09:56:22 +01:00
ref: don't apply rendercolor to studio models where it's not needed
This commit is contained in:
parent
10481a4ecc
commit
74ce7e9b10
@ -1744,48 +1744,20 @@ void R_LightLambert( vec4_t light[MAX_LOCALLIGHTS], vec3_t normal, vec3_t color,
|
||||
out[2] = finalLight[2] * 255;
|
||||
}
|
||||
|
||||
static void R_StudioSetColorBegin(short *ptricmds, vec3_t *pstudionorms )
|
||||
{
|
||||
float *lv = (float *)g_studio.lightvalues[ptricmds[1]];
|
||||
rgba_t color;
|
||||
|
||||
if( g_studio.numlocallights )
|
||||
{
|
||||
color[3] = tr.blend * 255;
|
||||
R_LightLambert( g_studio.lightpos[ptricmds[0]], pstudionorms[ptricmds[1]], lv, color );
|
||||
pglColor4ubv( color );
|
||||
}
|
||||
else
|
||||
{
|
||||
if( RI.currententity->curstate.rendermode == kRenderTransColor )
|
||||
{
|
||||
color[3] = tr.blend * 255;
|
||||
VectorCopy( (byte*)&RI.currententity->curstate.rendercolor, color );
|
||||
pglColor4ubv( color );
|
||||
}
|
||||
else pglColor4f( lv[0], lv[1], lv[2], tr.blend );
|
||||
}
|
||||
}
|
||||
|
||||
static void R_StudioSetColorArray(short *ptricmds, vec3_t *pstudionorms, byte *color )
|
||||
{
|
||||
float *lv = (float *)g_studio.lightvalues[ptricmds[1]];
|
||||
|
||||
color[3] = tr.blend * 255;
|
||||
R_LightLambert( g_studio.lightpos[ptricmds[0]], pstudionorms[ptricmds[1]], lv, color );
|
||||
}
|
||||
|
||||
if( g_studio.numlocallights )
|
||||
R_LightLambert( g_studio.lightpos[ptricmds[0]], pstudionorms[ptricmds[1]], lv, color );
|
||||
else
|
||||
{
|
||||
if( RI.currententity->curstate.rendermode == kRenderTransColor )
|
||||
VectorCopy( (byte*)&RI.currententity->curstate.rendercolor, color );
|
||||
else
|
||||
{
|
||||
color[0] = lv[0] * 255;
|
||||
color[1] = lv[1] * 255;
|
||||
color[2] = lv[2] * 255;
|
||||
}
|
||||
}
|
||||
static void R_StudioSetColorBegin( short *ptricmds, vec3_t *pstudionorms )
|
||||
{
|
||||
rgba_t color;
|
||||
|
||||
R_StudioSetColorArray( ptricmds, pstudionorms, color );
|
||||
pglColor4ubv( color );
|
||||
}
|
||||
|
||||
/*
|
||||
|
@ -1752,24 +1752,10 @@ static void R_StudioSetColorBegin(short *ptricmds, vec3_t *pstudionorms )
|
||||
float *lv = (float *)g_studio.lightvalues[ptricmds[1]];
|
||||
rgba_t color;
|
||||
|
||||
if( g_studio.numlocallights )
|
||||
{
|
||||
color[3] = tr.blend * 255;
|
||||
R_LightLambert( g_studio.lightpos[ptricmds[0]], pstudionorms[ptricmds[1]], lv, color );
|
||||
//pglColor4ubv( color );
|
||||
TriColor4ub(color[0], color[1], color[2], color[3]);
|
||||
}
|
||||
else
|
||||
{
|
||||
if( RI.currententity->curstate.rendermode == kRenderTransColor )
|
||||
{
|
||||
color[3] = tr.blend * 255;
|
||||
VectorCopy( (byte*)&RI.currententity->curstate.rendercolor, color );
|
||||
//pglColor4ubv( color );
|
||||
TriColor4ub(color[0], color[1], color[2], color[3]);
|
||||
}
|
||||
else _TriColor4f( lv[0], lv[1], lv[2], tr.blend );
|
||||
}
|
||||
color[3] = tr.blend * 255;
|
||||
|
||||
R_LightLambert( g_studio.lightpos[ptricmds[0]], pstudionorms[ptricmds[1]], lv, color );
|
||||
TriColor4ub( color[0], color[1], color[2], color[3] );
|
||||
}
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user