diff --git a/code/q3_ui/ui_players.c b/code/q3_ui/ui_players.c index 28a58ccd..d132f5c9 100644 --- a/code/q3_ui/ui_players.c +++ b/code/q3_ui/ui_players.c @@ -736,9 +736,9 @@ void UI_DrawPlayer( float x, float y, float w, float h, playerInfo_t *pi, int ti refdef.width = w; refdef.height = h; - refdef.fov_x = (int)((float)refdef.width / 640.0f * 90.0f); - xx = refdef.width / tan( refdef.fov_x / 360 * M_PI ); - refdef.fov_y = atan2( refdef.height, xx ); + refdef.fov_x = (int)((float)refdef.width / uis.xscale / 640.0f * 90.0f); + xx = refdef.width / uis.xscale / tan( refdef.fov_x / 360 * M_PI ); + refdef.fov_y = atan2( refdef.height / uis.yscale, xx ); refdef.fov_y *= ( 360 / M_PI ); // calculate distance so the player nearly fills the box diff --git a/code/ui/ui_players.c b/code/ui/ui_players.c index e42fc893..409ff689 100644 --- a/code/ui/ui_players.c +++ b/code/ui/ui_players.c @@ -742,13 +742,13 @@ void UI_DrawPlayer( float x, float y, float w, float h, playerInfo_t *pi, int ti refdef.width = w; refdef.height = h; - refdef.fov_x = (int)((float)refdef.width / 640.0f * 90.0f); - xx = refdef.width / tan( refdef.fov_x / 360 * M_PI ); - refdef.fov_y = atan2( refdef.height, xx ); + refdef.fov_x = (int)((float)refdef.width / uiInfo.uiDC.xscale / 640.0f * 90.0f); + xx = refdef.width / uiInfo.uiDC.xscale / tan( refdef.fov_x / 360 * M_PI ); + refdef.fov_y = atan2( refdef.height / uiInfo.uiDC.yscale, xx ); refdef.fov_y *= ( 360 / (float)M_PI ); // calculate distance so the player nearly fills the box - len = 0.7 * ( maxs[2] - mins[2] ); + len = 0.7 * ( maxs[2] - mins[2] ); origin[0] = len / tan( DEG2RAD(refdef.fov_x) * 0.5 ); origin[1] = 0.5 * ( mins[1] + maxs[1] ); origin[2] = -0.5 * ( mins[2] + maxs[2] );