Difference between revisions of "Widescreen Guide"

From QWiki
*>Renzo
*>Stev
 
(18 intermediate revisions by 2 users not shown)
Line 5: Line 5:
  
 
== Changing aspect ratio ==
 
== Changing aspect ratio ==
'''Important thing to be considered'''<BR>
+
'''The [[ezQuake]] way'''<BR>
We will want to keep the horizontal (sideways) information untouched when changing geometry in QW. What it means is that even if we had 16:10, 5:4 or 4:3 monitor the visibility sideways is always constant using the same FOV. Therefore we only change the '''vid_conheight''' values according to what kind of geometry the particular monitor has compared to 4:3 monitors.
+
* "Wide aspect" option is available on the option menus.
 
+
* You can also use "vid_wideaspect 1" command
'''The zQuake way'''<BR>
+
<br>
* If your widescreen monitor aspect ratio is 16:9, divide 16/9 and you get 1.77777  Put '''vid_screenaspect 1.777''' into your config.cfg.<BR>
+
'''The [[zQuake]] way'''<BR>
This doesn't currently work for in window modes; pixel ratio = 1.0 is assumed. At the moment only zQuake supports vid_screenaspect.<BR><BR>
+
* If your widescreen monitor aspect ratio is 16:9, divide 16/9 and you get 1.77777  Put '''vid_screenaspect 1.777''' into your config.cfg. This doesn't currently work for in window modes; pixel ratio = 1.0 is assumed. At the moment only zQuake supports vid_screenaspect.<BR>
'''The not so quick way''' (ezQuake, fuhquake and mqwcl)<BR>
+
'''The not so quick way''' (older ezQuakes, fuhquake and mqwcl)<BR>
 
* For 16:10 monitor you need to change the default aspect ratio by editing vid_conwidth and vid_conheight.
 
* For 16:10 monitor you need to change the default aspect ratio by editing vid_conwidth and vid_conheight.
 
* By default vid_conwidth is 640 and vid_conheight is 480
 
* By default vid_conwidth is 640 and vid_conheight is 480
* Since 16:10 monitor has less information than 4:3 monitor vertically, we need to decrease the height component.
 
 
* Use the following formula to calculate new vid_conheight:
 
* Use the following formula to calculate new vid_conheight:
  16/10=640/x
+
  16/10=x/480
  x=640*10/16
+
  x=480*16/10
  x=400
+
  x=768
* Now you have values for 16:10 aspect ratio (640/400)
+
* Now you have values for 16:10 aspect ratio
* Use vid_conwidth 640 and vid_conheight 400
+
* Use vid_conwidth 768 and vid_conheight 480
 +
 
 +
'''Important thing to be considered'''<BR>
 +
* If you want to keep the font size the same, '''vid_conwidth''' is the one that needs to be changed. Decreasing '''vid_conheight''' usually makes your font larger. What this means is: 4:3 640x480 -> 16:10 768x480.
  
 
== Changing FOV to correspond the new aspect ratio ==
 
== Changing FOV to correspond the new aspect ratio ==
Line 27: Line 29:
 
* Let's say you have FOV 120
 
* Let's say you have FOV 120
  
  FOV=2*atan((48/40))*tan(120/2))
+
  FOV=2*atan((48/40)*tan(120/2))
 
  FOV=2*atan(1.2*1.732)
 
  FOV=2*atan(1.2*1.732)
 
  FOV=2*atan(2.078)
 
  FOV=2*atan(2.078)
Line 34: Line 36:
  
 
<BR><BR>''' Resulting changes '''<BR>
 
<BR><BR>''' Resulting changes '''<BR>
* vid_conwidth 640 (old value was 640)
+
* vid_conwidth 768 (old value was 640)
* vid_conheight 400 (old value was 480)
+
* vid_conheight 480 (old value was 480)
 
* field of view 128.61  (old value was 120)
 
* field of view 128.61  (old value was 120)
  
== Other aspect ratios ==
+
== Aspect ratios for 5:4 and 16:9 monitors ==
 +
 
 +
 
 +
===5:4 monitors===
 +
 
 +
 
 
* For 5:4 monitor you also need to make changes
 
* For 5:4 monitor you also need to make changes
 
* Resolution 1280*1024
 
* Resolution 1280*1024
* Since 5:4 monitor has more information than 4:3 monitor vertically, we need to increase the height component.
+
  5/4=x/480
  5/4=640/x
+
  x=480*5/4
  x=640*4/5
+
  x=600
  x=512
+
* vid_conwidth is 600 and vid_conheight is 480
* vid_conwidth is 640 and vid_conheight is 512
 
 
* FOV formula can be used, but it needs different multiplier for tangent:
 
* FOV formula can be used, but it needs different multiplier for tangent:
  5/4=4/3
+
  5:4 / 4:3
 
  --> 15/16
 
  --> 15/16
* Formula is '''FOV=2*atan((15/16))*tan(fov/2))'''
+
* Formula is '''FOV=2*atan((15/16)*tan(fov/2))'''
 
* We are still using FOV 120
 
* We are still using FOV 120
  FOV=2*atan((15/16*tan(120/2)
+
 
 +
  FOV=2*atan((15/16)*tan(120/2)
 
  FOV=2*atan(0.9375*1.732)
 
  FOV=2*atan(0.9375*1.732)
 
  FOV=2*atan(1.624)
 
  FOV=2*atan(1.624)
 
  FOV=2*58.37
 
  FOV=2*58.37
 
  FOV=116.7
 
  FOV=116.7
 +
 +
 +
===16:9 monitors===
 +
 +
 +
* For 16:9 monitor you also need to make changes
 +
* Resolution 1920*1080
 +
16/9=x/480
 +
x=480*16/9
 +
x=853
 +
* vid_conwidth is 853 and vid_conheight is 480
 +
* FOV formula can be used, but it needs different multiplier for tangent:
 +
16:9 / 4:3
 +
--> 48/36
 +
 +
* Formula is '''FOV=2*atan((48/36)*tan(fov/2))'''
 +
* We are still using FOV 120
 +
 +
FOV=2*atan((48/36*tan(120/2)
 +
FOV=2*atan(1.3333*1.732)
 +
FOV=2*atan(2.309)
 +
FOV=2*66.59
 +
FOV=133.17
  
 
== Resolutions ==
 
== Resolutions ==

Latest revision as of 22:48, 8 April 2012

This guide helps you to set up your QuakeWorld client for widescreen monitors.

By default all the QW clients have been configured for the usage of 4:3 monitor and this means that objects (players, models, world) will look "fat" or "wide" when playing with 16:10 monitor for example. Usually most of the other games are somewhat different in the way that they usually need only one change to be made and that's FOV. However this does not apply to QW clients since world geometry is adjusted by conwidth and conheight variables. There are two simple steps to get QW looking proper on 16:10 monitor. Follow these steps to configure your client properly:


Changing aspect ratio

The ezQuake way

  • "Wide aspect" option is available on the option menus.
  • You can also use "vid_wideaspect 1" command


The zQuake way

  • If your widescreen monitor aspect ratio is 16:9, divide 16/9 and you get 1.77777 Put vid_screenaspect 1.777 into your config.cfg. This doesn't currently work for in window modes; pixel ratio = 1.0 is assumed. At the moment only zQuake supports vid_screenaspect.

The not so quick way (older ezQuakes, fuhquake and mqwcl)

  • For 16:10 monitor you need to change the default aspect ratio by editing vid_conwidth and vid_conheight.
  • By default vid_conwidth is 640 and vid_conheight is 480
  • Use the following formula to calculate new vid_conheight:
16/10=x/480
x=480*16/10
x=768
  • Now you have values for 16:10 aspect ratio
  • Use vid_conwidth 768 and vid_conheight 480

Important thing to be considered

  • If you want to keep the font size the same, vid_conwidth is the one that needs to be changed. Decreasing vid_conheight usually makes your font larger. What this means is: 4:3 640x480 -> 16:10 768x480.

Changing FOV to correspond the new aspect ratio

  • Changing aspect ratio only fixes your geometry. By doing it you will have correct/same width as with 4:3 resolution but you will lose information vertically.
  • To fix this, use the following formula to fix your FOV: FOV=2*atan((48/40)*tan(fov/2))
  • Let's say you have FOV 120
FOV=2*atan((48/40)*tan(120/2))
FOV=2*atan(1.2*1.732)
FOV=2*atan(2.078)
FOV=2*64.3
FOV=128.61



Resulting changes

  • vid_conwidth 768 (old value was 640)
  • vid_conheight 480 (old value was 480)
  • field of view 128.61 (old value was 120)

Aspect ratios for 5:4 and 16:9 monitors

5:4 monitors

  • For 5:4 monitor you also need to make changes
  • Resolution 1280*1024
5/4=x/480
x=480*5/4
x=600
  • vid_conwidth is 600 and vid_conheight is 480
  • FOV formula can be used, but it needs different multiplier for tangent:
5:4 / 4:3
--> 15/16
  • Formula is FOV=2*atan((15/16)*tan(fov/2))
  • We are still using FOV 120
FOV=2*atan((15/16)*tan(120/2)
FOV=2*atan(0.9375*1.732)
FOV=2*atan(1.624)
FOV=2*58.37
FOV=116.7


16:9 monitors

  • For 16:9 monitor you also need to make changes
  • Resolution 1920*1080
16/9=x/480
x=480*16/9
x=853
  • vid_conwidth is 853 and vid_conheight is 480
  • FOV formula can be used, but it needs different multiplier for tangent:
16:9 / 4:3
--> 48/36
  • Formula is FOV=2*atan((48/36)*tan(fov/2))
  • We are still using FOV 120
FOV=2*atan((48/36*tan(120/2)
FOV=2*atan(1.3333*1.732)
FOV=2*atan(2.309)
FOV=2*66.59
FOV=133.17

Resolutions

  • You can use "custom" resolutions for your ezQuake client. However the resolutions have to be supported by your gfxcard drivers or they will not work.
  • vid_customwidth 1680
  • vid_customheight 1050
  • vid_mode -1 (uses customwidth/height)
  • vid_restart

Final thoughts

Using these formulas geometry is corrected for different aspect ratios and we are trying to keep all the vertical information. For 16:10 monitors this means you get to see more horizontally but for 5:4 monitors this means you actually lose some information horizontally. If you don't change your FOV with corrected 5:4 aspect ratio, you will gain more vertical information.

See Also: TFT