OpenGL2: Store vertex colors and hdr lightmaps/lightgrid as RGBA16.
This commit is contained in:
parent
239f539702
commit
aa79738c50
15 changed files with 240 additions and 184 deletions
|
@ -201,10 +201,10 @@ static void R_SetupEntityLightingGrid( trRefEntity_t *ent, world_t *world ) {
|
|||
continue;
|
||||
}
|
||||
|
||||
if (world->hdrLightGrid)
|
||||
if (world->lightGrid16)
|
||||
{
|
||||
float *hdrData = world->hdrLightGrid + (int)(data - world->lightGridData) / 8 * 6;
|
||||
if (!(hdrData[0]+hdrData[1]+hdrData[2]+hdrData[3]+hdrData[4]+hdrData[5]) ) {
|
||||
uint16_t *data16 = world->lightGrid16 + (int)(data - world->lightGridData) / 8 * 6;
|
||||
if (!(data16[0]+data16[1]+data16[2]+data16[3]+data16[4]+data16[5])) {
|
||||
continue; // ignore samples in walls
|
||||
}
|
||||
}
|
||||
|
@ -227,18 +227,18 @@ static void R_SetupEntityLightingGrid( trRefEntity_t *ent, world_t *world ) {
|
|||
ent->directedLight[1] += factor * d4;
|
||||
ent->directedLight[2] += factor * d5;
|
||||
#else
|
||||
if (world->hdrLightGrid)
|
||||
if (world->lightGrid16)
|
||||
{
|
||||
// FIXME: this is hideous
|
||||
float *hdrData = world->hdrLightGrid + (int)(data - world->lightGridData) / 8 * 6;
|
||||
uint16_t *data16 = world->lightGrid16 + (int)(data - world->lightGridData) / 8 * 6;
|
||||
|
||||
ent->ambientLight[0] += factor * hdrData[0];
|
||||
ent->ambientLight[1] += factor * hdrData[1];
|
||||
ent->ambientLight[2] += factor * hdrData[2];
|
||||
ent->ambientLight[0] += factor * data16[0] / 257.0f;
|
||||
ent->ambientLight[1] += factor * data16[1] / 257.0f;
|
||||
ent->ambientLight[2] += factor * data16[2] / 257.0f;
|
||||
|
||||
ent->directedLight[0] += factor * hdrData[3];
|
||||
ent->directedLight[1] += factor * hdrData[4];
|
||||
ent->directedLight[2] += factor * hdrData[5];
|
||||
ent->directedLight[0] += factor * data16[3] / 257.0f;
|
||||
ent->directedLight[1] += factor * data16[4] / 257.0f;
|
||||
ent->directedLight[2] += factor * data16[5] / 257.0f;
|
||||
}
|
||||
else
|
||||
{
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue