About this mod
Enables Vert Axis scaling for wider FOV, also Optional Panini Projection
- Permissions and credits
Browse to:
%localappdata%\Stalker2\Saved\Config\Windows
Or wherever your config files are stored for other platformsCreate the file Engine.ini, if it doesn't exist, and add the following:
[/Script/Engine.RendererSettings]
r.UseLegacyMaintainYFOVViewMatrix=1
Or download the provided Engine.ini
Make sure your In-game options set the Display > Aspect Ratio to Auto
Panini Projection
Panini Projection is applied to a rendered perspective image, it aims to remove the "fisheye" distortion high FOV has with standard rendering practice.
IT HAS DRAWBACKS
The way Unreal handles this is through a reprojection and warping of the rendered image, this can lead to lower quality final output and a "blurred" center of the screen. I've adapted the config supplied for 21:9 and any other aspect ratios will probably need to tweak the values for best results.
Engine.ini (tested on 21:9)
[/Script/Engine.RendererSettings]
r.UseLegacyMaintainYFOVViewMatrix=1
r.Upscale.Panini.D=0.55
r.Upscale.Panini.S=0.5
r.Upscale.Panini.ScreenFit=0.5
r.Upscale.Quality=3
Add the above to your config, or download the optional Engine.ini.
The values:
r.Upscale.Panini.D | Float
Allow and configure to apply a panini distortion to the rendered image. Values between 0 and 1 allow to fade the effect (lerp).
Implementation from research paper "Pannini: A New Projection for Rendering Wide Angle Perspective Images"
0: off (default)
>0: enabled
1: Panini cylindrical stereographic projection
r.Upscale.Panini.S | Float
Panini projection's hard vertical compression factor.
0: no vertical compression factor (default)
1: Hard vertical compression
r.Upscale.Panini.ScreenFit | Float
Panini projection screen fit effect factor (lerp).
0: fit vertically
1: fit horizontally (default)
r.Upscale.Quality | Int
Defines the quality in which ScreenPercentage and WindowedFullscreen scales the 3d rendering.
0: Nearest filtering
1: Simple Bilinear
2: Directional blur with unsharp mask upsample.
3: 5-tap Catmull-Rom bicubic, approximating Lanczos 2. (default)
4: 13-tap Lanczos 3.
5: 36-tap Gaussian-filtered unsharp mask (very expensive, but good for extreme upsampling). (sucks in stalker?)
You can read more on Panini projection if you care on the UE dev site:
https://dev.epicgames.com/documentation/en-us/unreal-engine/panini-projection-in-unreal-engine