vrperfkit icon indicating copy to clipboard operation
vrperfkit copied to clipboard

ACC - Instant crash upon start

Open DigitalFriends opened this issue 3 years ago • 13 comments

Hi,

Not sure if this is supposed to work with ACC but reporting it anyways for your knowledge.

Been an avid user of openvr_fsr and openvr_foveated (currently using https://github.com/fholger/openvr_foveated and testing, seems to be working really, really well for ACC)

Logs here, not sure if it's tells you anything about the crash. Let me know if you want me to test anything else further.

03:20:11 [3556] ======================
03:20:11 [3556] VR Performance Toolkit
03:20:11 [3556] ======================

03:20:11 [3556] Current configuration:
03:20:11 [3556]   Upscaling (FSR) is enabled
03:20:11 [3556]     * Render scale: 0.95
03:20:11 [3556]     * Sharpness:    1
03:20:11 [3556]     * Radius:       0.5
03:20:11 [3556]     * MIP bias:     enabled
03:20:11 [3556]   Debug mode is disabled
03:20:11 [3556] Installing hook for LoadLibraryA from 00007FFDD2BCEBB0 to 00007FFDBB67B0A0
03:20:11 [3556] Installing hook for LoadLibraryExA from 00007FFDD2BCE550 to 00007FFDBB67B0F0
03:20:11 [3556] Installing hook for LoadLibraryW from 00007FFDD2BCE540 to 00007FFDBB67B1D0
03:20:11 [3556] Installing hook for LoadLibraryExW from 00007FFDD2BCA200 to 00007FFDBB67B160
03:20:11 [3556] d3d11.dll is loaded in the process, installing hooks...
03:20:11 [3556] Installing hook for D3D11CreateDevice from 00007FFDCD63DE80 to 00007FFDBB65CBA0
03:20:11 [3556] Installing hook for D3D11CreateDeviceAndSwapChain from 00007FFDCD63DFE0 to 00007FFDBB65D020
03:20:12 [3556] Loading DLL at "C:\\WINDOWS\\system32\\dxgi.dll"
03:20:13 [3556] vrclient_x64.dll is loaded in the process, installing hooks...
03:20:13 [3556] Installing hook for VRClientCoreFactory from 00007FFD91252AF0 to 00007FFDBB664830
03:20:13 [3556] OpenVR: requested interface IVRClientCore_003
03:20:13 [3556] Installing virtual function hook for IVRClientCore::GetGenericInterface
03:20:13 [3556] Installing virtual function hook for IVRClientCore::Cleanup
03:20:13 [3556] OpenVR: requested interface IVRClientCore_003
03:20:13 [3556] Removing hook to 00007FFD91249200
03:20:13 [3556] Removing hook to 00007FFD9124A800
03:20:13 [3556] Installing virtual function hook for IVRClientCore::GetGenericInterface
03:20:13 [3556] Installing virtual function hook for IVRClientCore::Cleanup
03:20:13 [3556] OpenVR: requested interface IVRRenderModels_006
03:20:13 [3556] OpenVR: requested interface IVRRenderModelsInternal_XXX
03:20:13 [3556] OpenVR: requested interface IVRResources_001
03:20:13 [3556] OpenVR: requested interface IVRDriverManager_001
03:20:13 [3556] OpenVR: requested interface IVRSettings_003
03:20:13 [3556] OpenVR: requested interface IVRSettingsInternal_001
03:20:13 [3556] OpenVR: requested interface IVRPaths_001
03:20:13 [3556] OpenVR: requested interface IVRPathsInternal_001
03:20:13 [3556] OpenVR: requested interface IVRProperties_001
03:20:13 [3556] OpenVR: requested interface IVRPropertiesInternal_001
03:20:13 [3556] OpenVR: requested interface IVRServer_XXX
03:20:13 [3556] OpenVR: requested interface IVRSystemLayerInternal_XXX
03:20:13 [3556] OpenVR: requested interface IVRClientInternal_XXX
03:20:13 [3556] OpenVR: requested interface LocalizationManager
03:20:13 [3556] OpenVR: requested interface IVRCompositorSystemInternal_001
03:20:13 [3556] OpenVR: requested interface IVRInput_010
03:20:13 [3556] OpenVR: requested interface IVRInputInternal_002
03:20:13 [3556] OpenVR: requested interface IVRChaperone_004
03:20:13 [3556] OpenVR: requested interface IVRChaperoneSetup_006
03:20:13 [3556] OpenVR: requested interface IVRChaperoneInternal_001
03:20:13 [3556] OpenVR: requested interface IVRApplications_007
03:20:13 [3556] OpenVR: requested interface IVRSystem_022
03:20:13 [3556] Installing virtual function hook for IVRSystem::GetRecommendedRenderTargetSize
03:20:13 [3556] OpenVR: requested interface IVRMailbox_002
03:20:13 [3556] OpenVR: requested interface IVRDebug_001
03:20:13 [3556] OpenVR: requested interface IVRBlockQueue_004
03:20:13 [3556] OpenVR: requested interface IVRControlPanel_006
03:20:13 [3556] OpenVR: requested interface IVRApplicationsInternal_XXX
03:20:13 [3556] OpenVR: requested interface IVRResources_001
03:20:13 [3556] OpenVR: requested interface IVRDriverDirectInternal_XXX
03:20:13 [3556] OpenVR: requested interface IVROverlay_025
03:20:13 [3556] OpenVR: requested interface IVROverlayInternal_XXX
03:20:13 [3556] OpenVR: requested interface IVRDriverDirectInternal_XXX
03:20:13 [3556] OpenVR: requested interface IVRExtendedDisplay_001
03:20:13 [3556] OpenVR: requested interface IVRTrackedCameraInternal_XXX
03:20:13 [3556] OpenVR: requested interface IVRCompositor_027
03:20:13 [3556] Installing virtual function hook for IVRCompositor::WaitGetPoses
03:20:13 [3556] Installing virtual function hook for IVRCompositor::PostPresentHandoff
03:20:13 [3556] Installing virtual function hook for IVRCompositor::Submit
03:20:13 [3556] OpenVR: requested interface IVRSystem_020
03:20:13 [3556] OpenVR: requested interface IVRSystem_020
03:20:13 [3556] OpenVR: requested interface IVRCompositor_022
03:20:13 [3556] OpenVR: requested interface IVROverlay_019
03:20:13 [3556] OpenVR: requested interface IVRChaperone_003
03:20:18 [3556] OpenVR: requested interface IVRExtendedDisplay_001
03:20:18 [3556] OpenVR: requested interface IVRInput_007
03:20:18 [5140] OpenVR: requested interface IVRSettings_003
03:20:18 [5140] OpenVR: requested interface IVRSystem_022
03:20:18 [5140] OpenVR: requested interface IVRSystem_022
03:20:18 [5140] OpenVR: requested interface IVRSystem_022
03:20:18 [5140] OpenVR: requested interface IVRSystem_022
03:20:18 [5140] Game is submitting D3D11 textures, creating necessary output resources...
03:20:18 [5140] Trying to load NVAPI...
03:20:18 [5140] Successfully initialized NVAPI; Variable Rate Shading is available.
03:20:18 [5140] Installing virtual function hook for ID3D11DeviceContext::PSSetSamplers
03:20:18 [5140] Installing virtual function hook for ID3D11DeviceContext::OMSetRenderTargets
03:20:18 [5140] Installing virtual function hook for ID3D11DeviceContext::OMSetRenderTargetsAndUnorderedAccessViews
03:20:18 [5140] OpenVR: requested interface IVRSystem_022
03:20:18 [5140] Raw projection for eye 0: l -1.1, r 1.1, t -1.4, b 1.1
03:20:18 [5140] Display is canted by 0 RAD
03:20:18 [5140] Projection center for eye 0: 0.52, 0.57
03:20:18 [5140] Raw projection for eye 1: l -1.1, r 1.1, t -1.4, b 1.1
03:20:18 [5140] Display is canted by -0 RAD
03:20:18 [5140] Projection center for eye 1: 0.48, 0.57
03:20:18 [5140] OpenVR: requested interface IVRSystem_022
03:20:18 [5140] Creating shader resource view for input texture 0000027EE86DA598
03:20:18 [5140] Creating D3D11 resources for FSR upscaling...
03:20:18 [5140] OpenVR: requested interface IVRResources_001
03:20:18 [5140] OpenVR: requested interface IVRCompositorSystemInternal_001
03:20:18 [5140] Creating replacement sampler for 0000027EE88A7C00 with MIP LOD bias -0.074
03:20:18 [5140] Creating replacement sampler for 0000027D87789BC0 with MIP LOD bias -0.074
03:20:18 [5140] Creating replacement sampler for 0000027D82E1EB80 with MIP LOD bias -0.074
03:20:18 [5140] Creating replacement sampler for 0000027D82E1F300 with MIP LOD bias -0.074
03:20:18 [5140] Creating replacement sampler for 0000027EE88A8380 with MIP LOD bias -0.074
03:20:18 [5140] Creating replacement sampler for 0000027D876BC8C0 with MIP LOD bias -0.074
03:20:18 [5140] Creating replacement sampler for 0000027D877AB7C0 with MIP LOD bias -0.074
03:20:18 [5140] Creating replacement sampler for 0000027D877CE480 with MIP LOD bias -0.074

DigitalFriends avatar Jan 20 '22 08:01 DigitalFriends

I figure since it now has DLSS and FSR built into the menus, any modification outside of that would result in over-sharpening or wasted resources. I fell into the game of adding Reshade on top of FSR and found out that although it initially looked sharper, was a bit of fool's gold when I actually continued playing. I feel that DLSS is generally superior to FSR or NIS, but may have more artifacting.

DJSlane avatar Jan 22 '22 05:01 DJSlane

Haven't tested this newer version in ACC yet, but I can tell you his other mod works great: https://github.com/fholger/openvr_fsr

JCae2798 avatar Jan 23 '22 14:01 JCae2798

Okay so i have concluded that this actually works with ACC.

However, it does not work if you enable TAA Gen 5, that was what caused the crashes for me.

DigitalFriends avatar Jan 24 '22 11:01 DigitalFriends

Does FFR in Vrperfkit work in ACC?

Raging-Beard avatar Feb 03 '22 04:02 Raging-Beard

I haven't seen it work. But maybe try https://github.com/cedriclmenard/vrperfkit/releases/tag/v0.2.2-dcs-ffr - I think this guy's mod for DCS proves if anyone can do it, perhaps he can! I'm not home at the moment to try myself. Let me know if it works for ACC. (Note that his .yml has upscaling disabled by default, but it can be enabled, also if you have a Pimax the foveated target positions are off but unnoticeable at high resolutions.

DJSlane avatar Feb 03 '22 05:02 DJSlane

Actually, it seems FFR is working in ACC, I had the wrong hotkey.

Raging-Beard avatar Feb 03 '22 05:02 Raging-Beard

Anybody can share some settings to try in ACC. 3600 Ryzen with 3060ti and really not nice framerate although load on CPU and GPU is under 70%, but I get not so nice FPS drops especially at night.

bbogdanmircea avatar Feb 04 '22 21:02 bbogdanmircea

Ok, so I tried this today, I had the initial crash when TAA GEN5 was enabled in the Video Settings in ACC, maybe a warning could be displayed about this before starting?

Then I also had a crash when fixed foveated was enabled in the .yml and also I needed to reconfigure all the keys because they conflict with the F Keys in ACC. From the Logs it seems to work, but it is really a pitty that there is no display of what is the actual setting that you are changing when in Debug Mode, I looked after playing with the debug in the Log and it seems that I also was able to enable the fixed foveated from the debug ... Anyway this is the setting yml that I used for my Ryzen 3600 and 3060ti GPU. vrperfkit_ACC_3600_3060ti.zip

bbogdanmircea avatar Feb 05 '22 14:02 bbogdanmircea

Just to check, did either of you (@bbogdanmircea / @Raging-Beard / @bbogdanmircea ) get this to work in ACC? I have been trying every combination of settings, with TAA Gen 5 always off and FFR set to true in vrperfkit.yml, to no avail. Game crashes instantly on launch. Same thing with the openvr_foveated mod.

With the normal openvr_fsr mod, or this mod without FFR enabled, it works just as expected, but I was really looking forward to being able to use FFR in ACC :)

Thanks!

EDIT: OK so I was able to get it working by first having it disabled, then using the hotkey in game… makes an immediate difference in frametime— outstanding performance gain! However I have not managed to run it for longer than a minute before it crashes, sometimes with a generic UE4 fatal error message and sometimes with a d3d device lost message :(

logs:

vrperfkit.log

AC2.log

fazlee712 avatar Feb 20 '22 17:02 fazlee712

I didn't with FFR I don't think. Let me check it out. The truth is I was SO happy with DLSS and that it worked in VR that I dropped my desire for FSR altogether such that I never tried it with FFR. I will try it and get back soon. Also I use the version from @cedriclmenard that forgives DCS for not sharing "which eye" it is rendering, just to be clear which fork I'm using if successful.

DJSlane avatar Feb 20 '22 20:02 DJSlane

To my extraordinary surprise: One, I had to turn the radius WAY down to see the effect at first. I used 0.2, 0.4 and 0.5. in order to see the effects. Then I noted two subsequent things. One, it didn't affect the menus at all, but would affect the scene. Two - sadly - it didn't affect frame times at all. Not even a few hundred milliseconds. So I guessed much of the work is done before the injection occurs. Then I noted that I am using DLSS still - and WHAMMO - FFR has it's normal difference, reducing frame times and everything - it works amazingly normal without DLSS enabled. I'm sad as this does not bode well for DLSS in other games such as MSFlight2020. The combo of FSR and FFR are very powerful so far.

DJSlane avatar Feb 20 '22 21:02 DJSlane

Furthermore. It didn't work with the in-game FSR. Only when FSR and DLSS were turned off. So AC2 must be performing something with the FSR and DLSS implementations in such a way that the benefits of FFR are out of order that I was expecting? It'd take someone with pipeline knowledge to figure this one out.

DJSlane avatar Feb 20 '22 21:02 DJSlane

... One, it didn't affect the menus at all, but would affect the scene.

Yes, this is not a bug. There is a concept of layers in most (all?) engines that can render for VR, and these layers are typically used for 2D UI elements that will be composited over the stereo 3D image in a performant and resolution independent manner. This way you get the benefit of granular resolution adjustment for the high-cost scene rendering, and a crisp UI at a prescribed depth.

adrianirwin avatar May 21 '22 10:05 adrianirwin