MilkyDeveloper / ReshadeForUWP

An awesome GUI wrapper that injects Reshade in UWP games that supports Xbox Game Pass PC and Microsoft Store.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

About the instructions for Flight Sim 2020

AlexanderVengrus opened this issue · comments

Dear MilkyDeveloper,
my name is Alexander Vengrus. My username on the official forum of the MSFS2020 is "AlexVengrus". First of all, I express my deep gratitude to you for your "ReshadeForUWP" program!

As you know, earlier I published my version of your guide for the "ReshadeForUWP" program with some changes on the official forum of the MSFS2020.
https://forums.flightsimulator.com/t/installing-reshade-on-ms-store-version-of-the-msfs2020-via-reshadeforuwp-program-by-milkydeveloper/411855
I recently found out that you published my instructions on your main GitHub page about the "ReshadeForUWP" program. Thank you so much!

The difference between my instructions and yours is that I do some steps with administrator rights and add a number of other small nuances. The ReShade really worked on MS Store edition of the MSFS2020 in my case after these steps. Earlier I posted two screenshots in the aforementioned topic of the MSFS2020 forum to prove it. (You will find the screenshots if you look at my second post in the topic.) Let me show you these screenshots here. (I turned on developer mode in the MSFS2020 to prove that I have MS Store edition of the MSFS2020. I deliberately tweaked ReShade very hard and roughly to make it work clearly visible. So the image on the screenshots is unbalanced and overloaded.)

ReShade on MS Store MSFS2020 - 1
The virtual file system directories displayed in the "Console" window contain "WindowsApps" directory. (The mouse points to this on the screenshot.) As far as I know, only MS Store edition of the simulator can have this directory. The general directory structure is also typical of MS Store edition.

ReShade on MS Store MSFS2020 - 2
As far as I know, the first line of the ReShade log shows the path to the executable file of the game to which the ReShade was injected. The type of this path indicated in the second screenshot is only possible on MS Store edition of the MSFS2020. (The mouse points to this on the screenshot.)

I don't have any glitches or crashes of MSFS2020 and ReShade, except for one problem: I noticed that about 30% of ReShade shaders don't work in my case. (These shaders are marked in red on the first screenshot.) About 10% doesn't work correctly. However, about 60% of the shaders work well. This 60% is a large number of shaders that can significantly change the graphics of the simulator.

What do you think about this? It is quite possible that the problem of some shaders inoperability caused by the specifics of interaction between the ReShade overlay and the graphics engine of the MSFS2020, in my opinion. It is not a fact that the problem caused by the "ReshadeForUWP" program.

Unfortunately, I cannot yet find out the real statistics of using your "ReshadeForUWP" program with my instructions. Some people say that the instructions work well. Some other people say that it doesn't work. I also haven't seen any objective tests from other users on this yet. In this regard, I want to make a video version of my instructions and ask viewers to objectively test the instructions for their MS Store edition of MSFS2020. I hope the video makes the installation process clearer and will avoid possible misunderstandings. Let me send you a report of this testing when the video is ready.

By the way, not so long ago I carried out a number of additional tests of your "ReshadeForUWP" program on MS Store MSFS2020. As a result I came to the conclusion that it is possible to abandon the 9th and 10th steps of my instructions. "ReshadeForUWP" works for me even without these steps. I also said about this on the MSFS2020 forum in my second post of the aforementioned topic. At the same time, it would be wrong to completely abandon these steps until the real statistics appear.

I'm also sending you my "log" file of ReShade for analysis.
ReShade64.log

I would be very grateful if you could express your professional comments about my thoughts. Thank you so much again!

Wow! I couldn't get MSFS working. Congrats! I'm not exactly sure about Reshade's internals, so I can't comment on the shaders working. It probably has to to with the depth buffer. You might be able to fix it by doing this. I am totally able to understand the statistics part - there are a million things that are different in UWP apps and Windows systems. Big thanks for the video/steps, I forgot to document my exact steps for this program :). Thanks for the log, but the log is only useful when the program crashes. I'll definitely update my instructions to include admin rights. I highly value your technical experience! Thanks.

I think one of the problems with this program is the DLL Injection. You see, this program works by injecting a DLL of Reshade. Normally, Win32 programs auto load DLLs when placed in the same directory, but UWP apps just don't work this way. DLL Injection is more "hacky" than just dragging and dropping it.

Thank you very much for your explanation and your kind words!
I'll try to use your solution for the depth buffer and analyze the changes in the shaders work at the first opportunity.

Dear MilkyDeveloper,
I've done a number of new experiments. Let me tell you my thoughts on this matter.

a) Your solution for the depth buffer is very useful! Thank you so much! I noticed two significant improvements in the work of ReShade shaders thanks to the solution.

  • I had problems in the work of Reshade ambient occlusion shaders on MSFS2020 previously. In particular, the shaders such as "MXAO" and "GloomAO" could periodically stop working for 5-10 seconds. (The AO structure returned to default during this period.) Then I noticed that the work of the AO shaders became stable after I used your solution for the depth buffer. So now I don't have any problems with AO shaders thanks to the solution.
  • I had artifacts in the Reshade anti-aliasing shaders on MSFS2020 previously. In particular, an unwanted tail appeared in the image like a motion blur effect when I used "Temporal AA", "DLAA Plus", "SMAA" shaders. Then I noticed that this artifact disappeared after I started using your depth buffer solution. The anti-aliasing shaders are now working correctly thanks to the solution.

So I highly recommend using your depth buffer solution.

Unfortunately, the list of shaders that "failed to compile" has not changed after using the solution. (I showed you this list in my first screenshot earlier.)

b) It seems to me that I found one of the reasons why some shaders have the compilation error. The reason is the incorrect path to the "fxh" files, in my opinion.

  • I noticed that the default paths to the "fxh" files that created by the "ReshadeForUWP" program have duplicate folders in my case:
    "C:\Users\Alexander\ReshadeInjectUWP\Shaders\dev\dev"
    "C:\Users\Alexander\ReshadeInjectUWP\Shaders\FXShaders\FXShaders"
    "C:\Users\Alexander\ReshadeInjectUWP\Shaders\OneShot\OneShot"
    "C:\Users\Alexander\ReshadeInjectUWP\Shaders\StageDepthPlus with depth buffer modification\StageDepthPlus with depth buffer modification"

  • Then I noticed that the ReShade "log" contains a number of "fxh" files opening errors like this:
    "C:\Users\Alexander\ReshadeInjectUWP\Shaders\DepthAlpha.fx(5, 1): preprocessor error: could not open included file 'C:\Users\Alexander\ReshadeInjectUWP\Shaders\FXShaders/Common.fxh'"
    (You can find this kind of errors in my previous "log" file of Reshade that I sent you earlier.)
    These errors occurred because the actual paths to the "fxh" files contains the aforementioned duplicate folders, In my opinion. Here is my screenshot that clearly shows this problem.
    Dublicate folders problem

  • Then I've moved all "fxh" files (excluding the files in the "OldShaders" folder) so that the paths to the files look like this:
    "C:\Users\Alexander\ReshadeInjectUWP\Shaders\dev"
    "C:\Users\Alexander\ReshadeInjectUWP\Shaders\FXShaders"
    "C:\Users\Alexander\ReshadeInjectUWP\Shaders\OneShot"
    "C:\Users\Alexander\ReshadeInjectUWP\Shaders\StageDepthPlus with depth buffer modification"

The compilation error disappeared for many shaders after these steps in my case. I capture another screenshot to prove it. Please take a look at this screenshot and compare it to my first screenshot at the beginning of this thread.
ReShade on MSFS2020 MS Store edition (more shaders work)
You saw the following line in my first screenshot previously: "Some effects failed to compile: Cursor.fx, DepthAlpha.fx, LiquidLens.fx, MagicHDR.fx, NeoBloom.fx" etc.. Now you can see that these shaders are enabled and working well in my current screenshot. Only "Pong.fx" shader have the compilation error.

(Regarding "Pong", this shader requires a "DrawText.fxh" file according to the Reshade "log". Unfortunately this file is missing from the "ReshadeForUWP" program folders in my case.)

I'm also attaching my current Reshade "log".
ReShade64.log
If you compare my previous "log" of Reshade with the current "log" of Reshade, you will see that the "Cursor.fx", "DepthAlpha.fx", "LiquidLens.fx", "MagicHDR.fx" and "NeoBloom.fx" shaders are now loading correctly. There are no more errors with opening "fxh" files for these shaders.

Thus, now about 90% of Reshade shaders work correctly on MSFS2020 MS Store edition in my case. It is very good!

c) I would like to make an addition to the MSFS2020 update method that I described in my instructions: now I came to conclusion that it might be necessary to reinstall Reshade through your "ReshadeForUWP" program after some big updates of the simulator like "World Update VI". (This is not necessary after every update, but only after some big updates.)

Let me inform you about my further results of using your program on MSFS2020 in this thread. Thank you so much for your "ReshadeForUWP" program and your depth buffer solution again!

Wow! Nice findings. I'll be sure to fix these bugs in the next release, expect an update within the next 2 days.

Dear MilkyDeveloper,
let me make some additions and clarifications to my previous post in this thread.

a) I also noticed an improvement in work of "qUINT SSR" (screen-space reflections) Reshade shader thanks to your depth buffer solution. Almost as well as AO shaders, this shader was periodically stop working previously. (The structure of reflections returned to default during this time.) Now this shader is working stably thanks to your depth buffer solution! I think that the solution could also have a positive effect on many other shaders.

b) More about the subfolders structure of the "Shaders" folder.

  • Some duplicate subfolders of the "Shaders" folder, that I described in my previous post, contain not only "fxh" files, but also "fx" files. These "fx" files must be moved in the same way as the "fxh" files, in my opinion.
  • "fx" and "fxh" files located in the root of the "Shaders" folder (not in subfolders of it) don't need to be moved.
  • It seems to me that the "OldShaders" subfolder also needs restructuring. I came to this conclusion after I analyzed the folder structure in "zip" archives with shaders, which are located in the root of the "ReshadeForUWP" folder.
    Default structure of the "OldShaders" subfolder automatically created by the "ReshadeForUWP" program:
    "C:\Users\Alexander\ReshadeInjectUWP\Shaders\OldShaders\DevShaders"
    "C:\Users\Alexander\ReshadeInjectUWP\Shaders\OldShaders\OldShaders"
    Correct structure, manually created according to the contents of the zip archives:
    "C:\Users\Alexander\ReshadeInjectUWP\Shaders\DevShaders"
    "C:\Users\Alexander\ReshadeInjectUWP\Shaders\OldShaders"
  • Shaders in "radegast" zip archive are not installed automatically by the "ReshadeForUWP" program, in my case. These shaders need to be unpacked and copied to the "Shaders" folder manually.
  • Shaders from "depth3d" zip archive are automatically unpacked, but not automatically moved from "Depth3D-master" folder to the "Shaders" folder, in my case. These shaders need to be manually moved to the "Shaders" folder.

This is the final subfolders structure of the "Shaders" folder, after all the changes described in my posts:
"C:\Users\Alexander\ReshadeInjectUWP\Shaders\dev"
"C:\Users\Alexander\ReshadeInjectUWP\Shaders\DevShaders"
"C:\Users\Alexander\ReshadeInjectUWP\Shaders\FXShaders"
"C:\Users\Alexander\ReshadeInjectUWP\Shaders\Include"
"C:\Users\Alexander\ReshadeInjectUWP\Shaders\OldShaders"
"C:\Users\Alexander\ReshadeInjectUWP\Shaders\OneShot"
"C:\Users\Alexander\ReshadeInjectUWP\Shaders\Others"
"C:\Users\Alexander\ReshadeInjectUWP\Shaders\StageDepthPlus with depth buffer modification"

Note: additional subfolders such as "Include" and "Others" appeared due to the manual installation of "Radegast" and "Depth3d" shaders.

Let me now turn to another important point. I noticed that the status of this project has changed to "unmaintained". If I understand correctly, this means that you will no longer support your "ReshadeForUWP" program. I felt very sad when I found out about this, because I like your products. What will be the further fate of this project?

Nice Findings! I'm not maintaining this project since I'm focusing on booting Linux on Chromebooks. Another project like mine, in maintenance, is here. I don't want to leave any changes hanging, so I'll make the changes you've requested this evening. Cheers! You can follow my progress here.

Done! See my latest release.

Thak you so much for the new version of your ReshadeForUWP program! Again, I'm very sorry that you don't maintaining this project anymore. I'll look at your other works with interest. Good luck with all your projects!

I'll probably maintain it on weekends, though. I put unmaintained since I am unable to work on it full-time.