cdozdil / OptiScaler

OptiScaler is middleware that enables various upscaling technologies in DLSS2-only games. It allows non-Nvidia users to use upscaling by applying DLSS2 inputs to XeSS, FSR2, or FSR3.
MIT License
565 stars 12 forks source link

The Killing Antidote: Missing Models/Meshes and Textures #104

Closed john7200 closed 4 days ago

john7200 commented 1 week ago

Greetings.

Using OptiScaler with The Killing Antidote results in missing model/meshes and textures during certain parts of the game.

Examples of the issues in game:

The main menu in game with OptiScaler: optiscaler_tka_01

The main menu without OptiScaler (native/in-game AMD FSR is enabled on High Quality): optiscaler_tka_02

Jodi is moving and changing poses on the main menu so the screenshots are not exactly accurate regarding the camera angle but you should get an idea about what are missing when running the game with OptiScaler.

The level/gameplay with OptiScaler: optiscaler_tka_06

The level/gameplay without OptiScaler (native/in-game AMD FSR is enabled on High Quality): optiscaler_tka_07

Notice that the UI elements such as crosshair (the white dot in the center of the screen) and HP, Stamina and Area Danger Status are the only ones that appear. The game actually runs with audio (SFX, BGM) play without any problem, for example I can move Jodi around and hear the footstep SFX plays, but nothing else (meshes/textures) is being rendered on screen.

Loading screen is animated, with Jodi being shown walking through a tunnel, an underground passage or something similar. Loading screen is not affected, as shown here when running the game with OptiScaler: optiscaler_tka_05

Technical aspects of the game that are worth mentioning:

Information regarding OptiScaler:

I'm Japanese so my apologies for any spelling or grammatical errors since I'm not a native English speaker.

cdozdil commented 1 week ago

Hi,

Thanks for really detailed report. I have replicated the issue, this was happening with Deep Rock Galactic (another game that use UE4). When playing DRG if you switch between FSR/DLSS issue was resolved but this game does not have FSR option when there is DLSS.

When running with -dx12 parameter as you said game runs without any issues and also FG & Hudfix works without any issues.

I don't know if I am going to check this issue because;

Are there any downsides of using Dx12 with the game?

Oh @MapleHinata if you wanna check, there is a very visiable ghosting with FSR3.1.2 on Dx11. Download size is around 2GB

MapleHinata commented 1 week ago

Hello, i took an additional look at it: This is another manifestation of the same problem Silent Hill 2 has under DX11, if OptiScaler touches the output of DLSS, it renders to a black screen, i still don't know what causes it, I believe it's related to the NvAPI calls the Unreal Engine makes for UAVOverlaps, but this is just a hunch.

cdozdil commented 1 week ago

Hi,

Could you test with this build please?

OptiScaler.v0.7.0-pre43.zip

john7200 commented 1 week ago

Greetings.

My apologies for not being able to response immediately. The last few days were very busy with works and I just have time now.

Regarding the v0.7.0-pre43 build, yes, it worked.

Main menu with v0.7.0-pre43: optiscaler_tka_08

Loading screen with v0.7.0-pre43: optiscaler_tka_09

The level/gameplay with v0.7.0-pre43: optiscaler_tka_10

I was going to post a few things as a follow-up but then I saw your and @MapleHinata posts, including the one with the new OptiScaler build, so I tested the new build first before I posted.

Regarding the FSR version, I found the FSR used in the game (the native one, not the one from OptiScaler):

VersionName: "2.2.1" FriendlyName: "FSR 2.2" Description: "FidelityFX Super Resolution 2.2" Category: "Rendering" CreatedBy: "AMD"

Regarding running the game with DirectX 12, there was performance penalty as expected from running a DirectX 11-based/native UE4 game with the DX12 argument although it was negligible, only single-digit fps loss (2-6 fps) almost all the time depending on the level or objects like meshes or effects/shaders being loaded or used, but only with either GTX 970 or GTX 1080 Ti with the highest visual/graphics settings. Running the game with RTX 4080 Super doesn't have that fps drop, but that is obviously because RTX 4080 Super is significantly more powerful than either GTX 970 or GTX 1080 Ti.

I've noticed there were only 3 files in the new build, the amd_fidelityfx_dx12.dll, nvngx.dll and nvngx.ini. Was this build made specifically for this kind of game (DirectX 11-based/native UE4 games)?

Anyway, @cdozdil @MapleHinata and everyone involved in this project, thank you very much for all the time and efforts put into this project and for responding to my report.

cdozdil commented 1 week ago

Hi,

No this build is not specific to Dx11 games etc. To keep filesize small I usually bundle main mod plus AMD dll needed for frame generation. If you are ok with it you can try Dx12 plus OptiScaler frame generation. With Hudfix limit at 2 it was working fine for me.