X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fdarkplaces.git;a=blobdiff_plain;f=r_light.c;h=b67dc484a5f207e124a15aa0ffe14a93d1503cf3;hp=5659ef377db717c1e83762b1546beb418b14f49d;hb=35fbafed36932577ccb9e269f3c41077cbe62025;hpb=6ad5a95ab75ec1821a14ff0764cdb13ab3f2c9ca diff --git a/r_light.c b/r_light.c index 5659ef37..b67dc484 100644 --- a/r_light.c +++ b/r_light.c @@ -43,22 +43,12 @@ void r_light_start(void) for (x = 0;x < 32;x++) { dx = (x - 15.5f) * (1.0f / 16.0f); - a = ((1.0f / (dx * dx + dy * dy + 0.2f)) - (1.0f / (1.0f + 0.2))) * 8.0f / (1.0f / (1.0f + 0.2)); + a = ((1.0f / (dx * dx + dy * dy + 0.2f)) - (1.0f / (1.0f + 0.2))) * 64.0f / (1.0f / (1.0f + 0.2)); a = bound(0, a, 255); pixels[y][x][0] = 255; pixels[y][x][1] = 255; pixels[y][x][2] = 255; pixels[y][x][3] = a; - /* - // for testing the size of the corona textures - if (a == 0) - { - pixels[y][x][0] = 255; - pixels[y][x][1] = 0; - pixels[y][x][2] = 0; - pixels[y][x][3] = 255; - } - */ } } lightcorona = R_LoadTexture (lighttexturepool, "lightcorona", 32, 32, &pixels[0][0][0], TEXTYPE_RGBA, TEXF_PRECACHE | TEXF_ALPHA); @@ -182,7 +172,8 @@ void R_DrawCoronas(void) VectorSubtract(rd->origin, vpn, diff); if (TraceLine(r_origin, diff, NULL, NULL, 0, true) == 1) { - scale = 1.0f / 65536.0f;//64.0f / (dist * dist + 1024.0f); + scale = 1.0f / 262144.0f; + //scale = 64.0f / (DotProduct(diff,diff) + 1024.0f); m.cr = rd->light[0] * scale; m.cg = rd->light[1] * scale; m.cb = rd->light[2] * scale; @@ -192,10 +183,7 @@ void R_DrawCoronas(void) VectorSubtract(rd->origin, r_origin, diff); m.ca *= 1 - exp(fogdensity/DotProduct(diff,diff)); } - // make it larger in the distance to keep a consistent size - //scale = 0.4f * dist; - //scale = 128.0f; - scale = rd->cullradius; + scale = rd->cullradius * 0.25f; tvxyz[0][0] = rd->origin[0] - vright[0] * scale - vup[0] * scale; tvxyz[0][1] = rd->origin[1] - vright[1] * scale - vup[1] * scale; tvxyz[0][2] = rd->origin[2] - vright[2] * scale - vup[2] * scale; @@ -208,7 +196,7 @@ void R_DrawCoronas(void) tvxyz[3][0] = rd->origin[0] + vright[0] * scale - vup[0] * scale; tvxyz[3][1] = rd->origin[1] + vright[1] * scale - vup[1] * scale; tvxyz[3][2] = rd->origin[2] + vright[2] * scale - vup[2] * scale; - R_Mesh_DrawDecal(&m); + R_Mesh_Draw(&m); } } }