mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Added separate handling for Air vehicles (longer view distances), Fixed normal zoom level to actual A3 value
This commit is contained in:
parent
3147cb038b
commit
f14830624b
@ -13,8 +13,13 @@
|
|||||||
*
|
*
|
||||||
* Public: No
|
* Public: No
|
||||||
*/
|
*/
|
||||||
|
#define DEBUG_MODE_FULL
|
||||||
#include "script_component.hpp"
|
#include "script_component.hpp"
|
||||||
|
|
||||||
|
#define VD_NORMAL_ZOOM 1.00041
|
||||||
|
#define VD_ZOOM_DIVISION 35
|
||||||
|
#define VD_ZOOM_DIVISION_AIR 10
|
||||||
|
|
||||||
params ["", "_idPFH"];
|
params ["", "_idPFH"];
|
||||||
|
|
||||||
// Remove PFH and set Object View Distance back to what it was before
|
// Remove PFH and set Object View Distance back to what it was before
|
||||||
@ -26,11 +31,22 @@ if (GVAR(objectViewDistanceCoeff) < 6) exitWith {
|
|||||||
private ["_zoom"];
|
private ["_zoom"];
|
||||||
_zoom = (call CBA_fnc_getFov) select 1;
|
_zoom = (call CBA_fnc_getFov) select 1;
|
||||||
|
|
||||||
if (_zoom > 0.94) then {
|
// Air
|
||||||
|
if ((vehicle ACE_player) isKindOf "Air") exitWith {
|
||||||
|
if (_zoom > VD_NORMAL_ZOOM) then {
|
||||||
|
// Dynamically set Object View Distance based on player's Zoom Level and View Distance
|
||||||
|
setObjectViewDistance ((_zoom / VD_ZOOM_DIVISION_AIR * (viewDistance - GVAR(fovBasedPFHminimalViewDistance))) + GVAR(fovBasedPFHminimalViewDistance));
|
||||||
|
} else {
|
||||||
|
setObjectViewDistance (GVAR(fovBasedPFHminimalViewDistance) + viewDistance / 10);
|
||||||
|
};
|
||||||
|
TRACE_2("FoV Based",getObjectViewDistance select 0,_zoom);
|
||||||
|
};
|
||||||
|
|
||||||
|
// Land
|
||||||
|
if (_zoom > VD_NORMAL_ZOOM) then {
|
||||||
// Dynamically set Object View Distance based on player's Zoom Level and View Distance
|
// Dynamically set Object View Distance based on player's Zoom Level and View Distance
|
||||||
setObjectViewDistance ((_zoom/34.98 * (viewDistance - GVAR(fovBasedPFHminimalViewDistance))) + GVAR(fovBasedPFHminimalViewDistance));
|
setObjectViewDistance ((_zoom / VD_ZOOM_DIVISION * (viewDistance - GVAR(fovBasedPFHminimalViewDistance))) + GVAR(fovBasedPFHminimalViewDistance));
|
||||||
} else {
|
} else {
|
||||||
setObjectViewDistance GVAR(fovBasedPFHminimalViewDistance);
|
setObjectViewDistance GVAR(fovBasedPFHminimalViewDistance);
|
||||||
};
|
};
|
||||||
|
|
||||||
TRACE_2("FoV Based",getObjectViewDistance select 0,_zoom);
|
TRACE_2("FoV Based",getObjectViewDistance select 0,_zoom);
|
||||||
|
Loading…
Reference in New Issue
Block a user