Upscaling Support
Considering the Resolution Rendering slider, I think bringing various Upscaliers support [NVIDIA DLSS, AMD FidelityFX Super Resolution and Intel XeSS] can be possible.... and ideally: all on the latest version.
It also comes with anti-aliasing versions, like NVIDIA DLAA, FSR Native AA, and XeSS Native AA.
While I think it's not necessary for this recomp, I still think it is worth it just for Upscalier's Native AA as an alternative to MSAA.
Vendor upscalers all require motion vectors (with the exception of FSR1), so it's challenging to implement in an existing game. There is prior art of this being done still, but only on "native" PC games so far.
However, it's likely much easier to add a SMAA post-processing option to cover the edges that MSAA didn't smooth out.
As long as this is made entirely optional I don't mind.
Give me my MSAA, at least it's a consistent option with no smearing, ghosting or hallucinations.
Though increasing MSAA to 16x or introducing oldschool SSAA would be very welcome, even though the latter might absolutely destroy my framerate until I upgrade to a card that can handle 4k or 1440p.
As mentioned this requires the creation of motion vectors which is not an easy task, you would probably have to look into how something like Mario 64 Render96 Raytracing does it.
That being said, the default MSAA seems to do a very good job cleaning up jaggies, I think the biggest benefit of proper motion vectors would be something like accurate per-pixel motion blur.
Though increasing MSAA to 16x
Unfortunately, modern graphics APIs don't have "16x MSAA" (or SGSSAA) like D3D11 or OpenGL do. Drivers actually implement "16x MSAA" as 4x SSAA + 4x SSAA, as the maximum level of actual MSAA is 8x (which is why 2x SSAA + 8x MSAA is also a possibility).
What can be done instead is to allow for per-sample shading, which is Vulkan-only functionality that allows MSAA to act as a form of SSAA and provide higher-quality antialiasing. On Direct3D 12, all you can do is increase the resolution scale slider above 100% to achieve supersampling.
which is Vulkan-only functionality that allows MSAA to act as a form of SSAA and provide higher-quality antialiasing.
im not even gonna ask how this was done or what this means.
The advanced upscalers need motion vectors, but I think something FSR v1 or NIS upscalers can be built in, as they just work on the image itself. It should be a little bit better than the default upscaling happening when you drop the resolution scale below 100%.
Maybe even SMAA integration? I really like it in P-06 (though these games aren't that related) it's relatively cheap and effective