Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision |
hud_coordinate_system [2017/04/17 17:39] – korshun | hud_coordinate_system [2017/04/18 16:35] – korshun |
---|
====== HUD coordinate system ====== | ====== HUD coordinate system ====== |
ZDoom uses a special coordinate system for [[zdoom>HudMessage]]s. | ZDoom uses a special coordinate system for [[zdoom>HudMessage]]s. In 4:3 resolutions, the coordinate system's rectangle matches that of the screen. In aspect ratios other than that, a 4:3 rectangle is put at the center of the screen and the remaining screen space is out of its boundaries. |
| |
| The HUD coordinate system's rectangle width and height are specified in [[zdoom>SetHudSize]]. |
| |
| ACSUtils provides functions to correctly work with the HUD coordinate system. |
| |
| ===== Retrieve aspect ratio ===== |
| [[functions:GetAspectRatio]] returns the aspect ratio that ZDoom assumes the screen is. ZDoom uses tricky code for that. |
| |
| ===== Actual screen boundaries ===== |
| [[functions:HudLeftFor]], [[functions:HudRightFor]], [[functions:HudTopFor]] and [[functions:HudBottomFor]] return actual screen boundaries in the HUD coordinate system for the specified width and height of the HUD coordinate system, taking the current aspect ratio into account. |
| |
| To avoid specifying a width or height every time, you can call [[functions:HudSetVirtualSize]] once and then call [[functions:HudLeft]], [[functions:HudRight]], [[functions:HudTop]] and [[functions:HudBottom]]. |