getResolution: Difference between revisions
Jump to navigation
Jump to search
m (Replaced <code> with <sqf>) |
Lou Montana (talk | contribs) m (Text replacement - "\{\{Feature *\| *Informative *\| ([^↵]+) *\}\}" to "{{Feature|informative|$1}}") |
||
(2 intermediate revisions by 2 users not shown) | |||
Line 16: | Line 16: | ||
|descr= Returns an array containing all information about current client screen resolution. | |descr= Returns an array containing all information about current client screen resolution. | ||
{{Feature | arma3 | '''Render resolution''' is not returned by this command.<br> | {{Feature|arma3| | ||
'''Render resolution''' is not returned by this command.<br> | |||
A sampling setting of '''50%''' means half of native width ''and'' half of native height, resulting in a render resolution of '''''25%''''' the original resolution.}} | A sampling setting of '''50%''' means half of native width ''and'' half of native height, resulting in a render resolution of '''''25%''''' the original resolution.}} | ||
{{Feature | important | The engine default value for {{hl|fovTop}} is '''0.75''' in case it is needed to calculate difference with custom FOV.}} | {{Feature | important | The engine default value for {{hl|fovTop}} is '''0.75''' in case it is needed to calculate difference with custom FOV.}} | ||
{{Feature | | {{Feature|informative|The {{hl|aspectRatio}} is calculated as {{hl|fovLeft / fovTop}} and should be the same as {{hl|screenW / screenH}} for undistorted image if the FOV is custom. Some of the common values: | ||
{{{!}} class{{=}}"wikitable" | {{{!}} class{{=}}"wikitable" | ||
! 16/9 !! 16/10 !! 5/4 !! 4/3 !! 16/9 triple screen | ! 16/9 !! 16/10 !! 5/4 !! 4/3 !! 16/9 triple screen | ||
Line 29: | Line 30: | ||
|s1= [[getResolution]] | |s1= [[getResolution]] | ||
|r1= [[Array]] - {{hl|[screenW, screenH, viewPortW, viewPortH, aspectRatio, uiScale, fovTop, fovLeft, tripleHead]}} | |r1= [[Array]] - {{hl|[screenW, screenH, viewPortW, viewPortH, aspectRatio, uiScale, fovTop, fovLeft, tripleHead, textureQuality]}} | ||
* {{hl|screenW}}: [[Number]] - width of the screen in pixels | * {{hl|screenW}}: [[Number]] - width of the screen in pixels | ||
* {{hl|screenH}}: [[Number]] - height of the screen in pixels | * {{hl|screenH}}: [[Number]] - height of the screen in pixels | ||
Line 36: | Line 37: | ||
* {{hl|aspectRatio}}: [[Number]] - screen aspect ratio | * {{hl|aspectRatio}}: [[Number]] - screen aspect ratio | ||
* {{hl|uiScale}}: [[Number]] - the scale of the UI, which affects view port size: | * {{hl|uiScale}}: [[Number]] - the scale of the UI, which affects view port size: | ||
: {{{!}} class | : {{{!}} class="wikitable" style="margin-top: -0.5em" | ||
{{!}}+ | {{!}}+ {{arma3}} | ||
! Very Small !! Small !! Normal !! Large !! Very Large | ! Very Small !! Small !! Normal !! Large !! Very Large | ||
{{!}}- | {{!}}- | ||
{{!}} 0.47 {{!}}{{!}} 0.55 {{!}}{{!}} 0.7 {{!}}{{!}} 0.85 {{!}}{{!}} 1 | {{!}} 0.47 {{!}}{{!}} 0.55 {{!}}{{!}} 0.7 {{!}}{{!}} 0.85 {{!}}{{!}} 1 | ||
{{!}}} | {{!}}} | ||
* {{GVI|arma3|1.94}} {{hl|fovTop}}: [[Number]] - vertical FOV in [[rad | * {{GVI|arma3|1.94|size= 0.75}} {{hl|fovTop}}: [[Number]] - vertical FOV in [[rad]]ians, the same as {{hl|fovTop}} value from the user profile | ||
* {{GVI|arma3|1.94}} {{hl|fovLeft}}: [[Number]] - horizontal FOV in [[rad | * {{GVI|arma3|1.94|size= 0.75}} {{hl|fovLeft}}: [[Number]] - horizontal FOV in [[rad]]ians, the same as{{hl|fovLeft}} value from the user profile | ||
* {{GVI|arma3|1.94}} {{hl|tripleHead}}: [[Boolean]] - [[true]] if user has triple head screen (see also [[safeZoneXAbs]], [[safeZoneWAbs]]) | * {{GVI|arma3|1.94|size= 0.75}} {{hl|tripleHead}}: [[Boolean]] - [[true]] if user has triple head screen (see also [[safeZoneXAbs]], [[safeZoneWAbs]]) | ||
* {{GVI|arma3|2.10|size= 0.75}} {{hl|textureQuality}}: [[Number]] - current texture quality set in user preferences in 0..1 range, where 0 is lowest, 1 is highest | |||
|x1= <sqf>private _res = getResolution;</sqf> | |x1= <sqf>private _res = getResolution;</sqf> | ||
Example result with a single 16:9 monitor: | Example result with a single 16:9 monitor: | ||
<sqf>[ | <sqf> | ||
[ | |||
1920, // width | 1920, // width | ||
1080, // height | 1080, // height | ||
Line 58: | Line 62: | ||
1.33333, // fovLeft | 1.33333, // fovLeft | ||
false // tripleHead | false // tripleHead | ||
]</sqf> | ] | ||
</sqf> | |||
Example result with a triple 16:9 monitor setup: | Example result with a triple 16:9 monitor setup: | ||
<sqf>[ | <sqf> | ||
[ | |||
5760, // width | 5760, // width | ||
1080, // height | 1080, // height | ||
Line 67: | Line 73: | ||
5.33333, // aspect ratio | 5.33333, // aspect ratio | ||
0.55 // UI scale | 0.55 // UI scale | ||
]</sqf> | ] | ||
</sqf> | |||
Example result on a dedicated server: | Example result on a dedicated server: | ||
<sqf>[ | <sqf> | ||
[ | |||
160, // width | 160, // width | ||
120, // height | 120, // height | ||
Line 76: | Line 84: | ||
1.33333, // aspect ratio | 1.33333, // aspect ratio | ||
0.85 // UI scale | 0.85 // UI scale | ||
]</sqf> | ] | ||
</sqf> | |||
|seealso= [[getObjectFOV]] [[worldToScreen]] [[screenToWorld]] [[safeZoneX]] [[safeZoneY]] [[safeZoneW]] [[safeZoneH]] | |seealso= [[getObjectFOV]] [[worldToScreen]] [[screenToWorld]] [[safeZoneX]] [[safeZoneY]] [[safeZoneW]] [[safeZoneH]] | ||
}} | }} | ||
{{Note | |||
|user= Tom_48_97 | |||
|timestamp= 20101220053800 | |||
|text= This command can be useful to play a video (see this function [[BIS_fnc_playVideo]]) in the given format if you have compiled it for different UI scale. | |||
}} | |||
Latest revision as of 18:11, 15 March 2024
Description
- Description:
- Returns an array containing all information about current client screen resolution.
- Groups:
- SystemGUI Control - Positioning
Syntax
- Syntax:
- getResolution
- Return Value:
- Array - [screenW, screenH, viewPortW, viewPortH, aspectRatio, uiScale, fovTop, fovLeft, tripleHead, textureQuality]
- screenW: Number - width of the screen in pixels
- screenH: Number - height of the screen in pixels
- viewPortW: Number - width of the 4:3 view port in pixels
- viewPortH: Number - height of the 4:3 view port in pixels
- aspectRatio: Number - screen aspect ratio
- uiScale: Number - the scale of the UI, which affects view port size:
Arma 3 Very Small Small Normal Large Very Large 0.47 0.55 0.7 0.85 1
- 1.94 fovTop: Number - vertical FOV in radians, the same as fovTop value from the user profile
- 1.94 fovLeft: Number - horizontal FOV in radians, the same asfovLeft value from the user profile
- 1.94 tripleHead: Boolean - true if user has triple head screen (see also safeZoneXAbs, safeZoneWAbs)
- 2.10 textureQuality: Number - current texture quality set in user preferences in 0..1 range, where 0 is lowest, 1 is highest
Examples
- Example 1:
-
Example result with a single 16:9 monitor:
Example result with a triple 16:9 monitor setup:[ 1920, // width 1080, // height 792, // 2D viewport width 594, // 2D viewport height 1.77778, // aspect ratio 0.55, // UI scale 0.75, // fovTop 1.33333, // fovLeft false // tripleHead ]Example result on a dedicated server:[ 5760, // width 1080, // height 792, // 2D viewport width 594, // 2D viewport height 5.33333, // aspect ratio 0.55 // UI scale ][ 160, // width 120, // height 136, // 2D viewport width 102, // 2D viewport height 1.33333, // aspect ratio 0.85 // UI scale ]
Additional Information
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
- Posted on Dec 20, 2010 - 05:38 (UTC)
- This command can be useful to play a video (see this function BIS_fnc_playVideo) in the given format if you have compiled it for different UI scale.