cvar_t scr_screenshot_jpeg = {CVAR_SAVE, "scr_screenshot_jpeg","1"};
cvar_t scr_screenshot_jpeg_quality = {CVAR_SAVE, "scr_screenshot_jpeg_quality","0.9"};
cvar_t scr_screenshot_gamma = {CVAR_SAVE, "scr_screenshot_gamma","2.2"};
-cvar_t scr_screenshot_name = {0, "scr_screenshot_name","dp"};
+// scr_screenshot_name is defined in fs.c
cvar_t cl_capturevideo = {0, "cl_capturevideo", "0"};
cvar_t cl_capturevideo_sound = {0, "cl_capturevideo_sound", "0"};
cvar_t cl_capturevideo_fps = {0, "cl_capturevideo_fps", "30"};
if (!r_timereport_active || r_showtrispass)
return;
+ qglFinish();
r_timereport_temp = r_timereport_current;
r_timereport_current = Sys_DoubleTime();
t = (int) ((r_timereport_current - r_timereport_temp) * 1000000.0);
{
speedstringcount = 0;
sprintf(r_speeds_string + strlen(r_speeds_string), "org:'%+8.2f %+8.2f %+8.2f' dir:'%+2.3f %+2.3f %+2.3f'\n", r_vieworigin[0], r_vieworigin[1], r_vieworigin[2], r_viewforward[0], r_viewforward[1], r_viewforward[2]);
- sprintf(r_speeds_string + strlen(r_speeds_string), "world:%6i faces%6i nodes%6i leafs%6i dlitwalls\n", c_faces, c_nodes, c_leafs, c_light_polys);
- sprintf(r_speeds_string + strlen(r_speeds_string), "%5i models%5i bmodels%5i sprites%6i particles%4i dlights\n", c_models, c_bmodels, c_sprites, c_particles, c_dlights);
- sprintf(r_speeds_string + strlen(r_speeds_string), "%6i modeltris%6i meshs%6i meshtris\n", c_alias_polys, c_meshs, c_meshelements / 3);
- sprintf(r_speeds_string + strlen(r_speeds_string), "bloom %s: %i copies (%i pixels) %i draws (%i pixels)\n", c_bloom ? "active" : "inactive", c_bloomcopies, c_bloomcopypixels, c_bloomdraws, c_bloomdrawpixels);
- sprintf(r_speeds_string + strlen(r_speeds_string), "realtime lighting:%4i lights%4i clears%4i scissored\n", c_rt_lights, c_rt_clears, c_rt_scissored);
- sprintf(r_speeds_string + strlen(r_speeds_string), "dynamic: %6i shadowmeshes%6i shadowtris%6i lightmeshes%6i lighttris\n", c_rt_shadowmeshes, c_rt_shadowtris, c_rt_lightmeshes, c_rt_lighttris);
- sprintf(r_speeds_string + strlen(r_speeds_string), "precomputed: %6i shadowmeshes%6i shadowtris\n", c_rtcached_shadowmeshes, c_rtcached_shadowtris);
-
- c_alias_polys = 0;
- c_light_polys = 0;
- c_faces = 0;
- c_nodes = 0;
- c_leafs = 0;
- c_models = 0;
- c_bmodels = 0;
- c_sprites = 0;
- c_particles = 0;
- c_dlights = 0;
- c_meshs = 0;
- c_meshelements = 0;
- c_rt_lights = 0;
- c_rt_clears = 0;
- c_rt_scissored = 0;
- c_rt_shadowmeshes = 0;
- c_rt_shadowtris = 0;
- c_rt_lightmeshes = 0;
- c_rt_lighttris = 0;
- c_rtcached_shadowmeshes = 0;
- c_rtcached_shadowtris = 0;
- c_bloom = 0;
- c_bloomcopies = 0;
- c_bloomcopypixels = 0;
- c_bloomdraws = 0;
- c_bloomdrawpixels = 0;
+ sprintf(r_speeds_string + strlen(r_speeds_string), "%5i entities%6i surfaces%6i triangles%5i leafs%5i portals%6i particles\n", renderstats.entities, renderstats.entities_surfaces, renderstats.entities_triangles, renderstats.world_leafs, renderstats.world_portals, renderstats.particles);
+ sprintf(r_speeds_string + strlen(r_speeds_string), "%4i lights%4i clears%4i scissored%7i light%7i shadow%i7 dynamic\n", renderstats.lights, renderstats.lights_clears, renderstats.lights_scissored, renderstats.lights_lighttriangles, renderstats.lights_shadowtriangles, renderstats.lights_dynamicshadowtriangles);
+ if (renderstats.bloom)
+ sprintf(r_speeds_string + strlen(r_speeds_string), "rendered%6i meshes%8i triangles bloompixels%8i copied%8i drawn\n", renderstats.meshes, renderstats.meshes_elements / 3, renderstats.bloom_copypixels, renderstats.bloom_drawpixels);
+ else
+ sprintf(r_speeds_string + strlen(r_speeds_string), "rendered%6i meshes%8i triangles\n", renderstats.meshes, renderstats.meshes_elements / 3);
r_timereport_start = Sys_DoubleTime();
}
+
+ memset(&renderstats, 0, sizeof(renderstats));
}
void R_TimeReport_End(void)
green = bound(0, green, 1);
blue = bound(0, blue, 1);
alpha = bound(0, alpha, 1);
- dq = (void *)(r_refdef.drawqueue + r_refdef.drawqueuesize);
+ dq = (drawqueue_t *)(r_refdef.drawqueue + r_refdef.drawqueuesize);
dq->size = size;
dq->command = DRAWQUEUE_STRING;
dq->flags = flags;
size += sizeof(float[4]) * mesh->num_vertices;
if (r_refdef.drawqueuesize + size > r_refdef.maxdrawqueuesize)
return;
- dq = (void *)(r_refdef.drawqueue + r_refdef.drawqueuesize);
+ dq = (drawqueue_t *)(r_refdef.drawqueue + r_refdef.drawqueuesize);
dq->size = size;
dq->command = DRAWQUEUE_MESH;
dq->flags = flags;
dq->scalex = 0;
dq->scaley = 0;
p = (void *)(dq + 1);
- m = p;p = (qbyte*)p + sizeof(drawqueuemesh_t);
+ m = (drawqueuemesh_t *)p;p = (qbyte*)p + sizeof(drawqueuemesh_t);
m->num_triangles = mesh->num_triangles;
m->num_vertices = mesh->num_vertices;
m->texture = mesh->texture;
- m->data_element3i = p;memcpy(m->data_element3i , mesh->data_element3i , m->num_triangles * sizeof(int[3]));p = (qbyte*)p + m->num_triangles * sizeof(int[3]);
- m->data_vertex3f = p;memcpy(m->data_vertex3f , mesh->data_vertex3f , m->num_vertices * sizeof(float[3]));p = (qbyte*)p + m->num_vertices * sizeof(float[3]);
- m->data_texcoord2f = p;memcpy(m->data_texcoord2f, mesh->data_texcoord2f, m->num_vertices * sizeof(float[2]));p = (qbyte*)p + m->num_vertices * sizeof(float[2]);
- m->data_color4f = p;memcpy(m->data_color4f , mesh->data_color4f , m->num_vertices * sizeof(float[4]));p = (qbyte*)p + m->num_vertices * sizeof(float[4]);
+ m->data_element3i = (int *)p;memcpy(m->data_element3i , mesh->data_element3i , m->num_triangles * sizeof(int[3]));p = (qbyte*)p + m->num_triangles * sizeof(int[3]);
+ m->data_vertex3f = (float *)p;memcpy(m->data_vertex3f , mesh->data_vertex3f , m->num_vertices * sizeof(float[3]));p = (qbyte*)p + m->num_vertices * sizeof(float[3]);
+ m->data_texcoord2f = (float *)p;memcpy(m->data_texcoord2f, mesh->data_texcoord2f, m->num_vertices * sizeof(float[2]));p = (qbyte*)p + m->num_vertices * sizeof(float[2]);
+ m->data_color4f = (float *)p;memcpy(m->data_color4f , mesh->data_color4f , m->num_vertices * sizeof(float[4]));p = (qbyte*)p + m->num_vertices * sizeof(float[4]);
r_refdef.drawqueuesize += dq->size;
}
Con_DPrint("DrawQueue full !\n");
return;
}
- dq = (void*) (r_refdef.drawqueue + r_refdef.drawqueuesize);
+ dq = (drawqueue_t *) (r_refdef.drawqueue + r_refdef.drawqueuesize);
dq->size = sizeof(*dq);
dq->command = DRAWQUEUE_SETCLIP;
dq->x = x;
Con_DPrint("DrawQueue full !\n");
return;
}
- dq = (void*) (r_refdef.drawqueue + r_refdef.drawqueuesize);
+ dq = (drawqueue_t *) (r_refdef.drawqueue + r_refdef.drawqueuesize);
dq->size = sizeof(*dq);
dq->command = DRAWQUEUE_RESETCLIP;
dq->x = 0;
sprintf(filename, "%s%06d.%s", base, shotnumber, jpeg ? "jpg" : "tga");
- buffer1 = Mem_Alloc(tempmempool, vid.width * vid.height * 3);
- buffer2 = Mem_Alloc(tempmempool, vid.width * vid.height * 3);
- buffer3 = Mem_Alloc(tempmempool, vid.width * vid.height * 3 + 18);
+ buffer1 = (qbyte *)Mem_Alloc(tempmempool, vid.width * vid.height * 3);
+ buffer2 = (qbyte *)Mem_Alloc(tempmempool, vid.width * vid.height * 3);
+ buffer3 = (qbyte *)Mem_Alloc(tempmempool, vid.width * vid.height * 3 + 18);
if (SCR_ScreenShot (filename, buffer1, buffer2, buffer3, 0, 0, vid.width, vid.height, false, false, false, jpeg, true))
Con_Printf("Wrote %s\n", filename);
cl_capturevideo_framerate = bound(1, cl_capturevideo_fps.value, 1000);
cl_capturevideo_soundrate = 0;
cl_capturevideo_frame = 0;
- cl_capturevideo_buffer = Mem_Alloc(tempmempool, vid.width * vid.height * (3+3+3) + 18);
+ cl_capturevideo_buffer = (qbyte *)Mem_Alloc(tempmempool, vid.width * vid.height * (3+3+3) + 18);
gamma = 1.0/scr_screenshot_gamma.value;
/*
Grab six views for environment mapping tests
===============
*/
-struct
+struct envmapinfo_s
{
float angles[3];
char *name;
r_refdef.fov_x = 90;
r_refdef.fov_y = 90;
- buffer1 = Mem_Alloc(tempmempool, size * size * 3);
- buffer2 = Mem_Alloc(tempmempool, size * size * 3);
- buffer3 = Mem_Alloc(tempmempool, size * size * 3 + 18);
+ buffer1 = (qbyte *)Mem_Alloc(tempmempool, size * size * 3);
+ buffer2 = (qbyte *)Mem_Alloc(tempmempool, size * size * 3);
+ buffer3 = (qbyte *)Mem_Alloc(tempmempool, size * size * 3 + 18);
for (j = 0;j < 12;j++)
{
void SHOWLMP_decodehide(void)
{
int i;
- qbyte *lmplabel;
+ char *lmplabel;
lmplabel = MSG_ReadString();
for (i = 0;i < SHOWLMP_MAXLABELS;i++)
if (showlmp[i].isactive && strcmp(showlmp[i].label, lmplabel) == 0)
void SHOWLMP_decodeshow(void)
{
int i, k;
- qbyte lmplabel[256], picname[256];
+ char lmplabel[256], picname[256];
float x, y;
strlcpy (lmplabel,MSG_ReadString(), sizeof (lmplabel));
strlcpy (picname, MSG_ReadString(), sizeof (picname));