Handling variable FOV scaling when players aim down sights with 4x-10x sniper optics in Apex:
$$\text{EffectiveFOV} = \text{BaseFOV} \times \text{fov_scale}$$
Where fov_scale drops from 1.0f down to 0.22f when zoomed in with a Digital Threat scope.
Factoring fov_scale into ViewMatrix projection guarantees that ESP bounding boxes stay locked to 3D player models regardless of sniper zoom level!