AMD FideltyFX Enabled in SteamVR (open source project)

Homepage Forums General vorpX Discussion AMD FideltyFX Enabled in SteamVR (open source project)

Viewing 15 posts - 16 through 30 (of 48 total)
  • Author
    Posts
  • #206149
    moarveer
    Participant

    That pic looks incredible, this is a fantastic achievement indeed, I hope we can test this out soon enough!

    Thanks Ralf for the constant improvement of Vorpx, for me performance is one of the main issues with Vorpx, this is game changing in many aspects, same with AFG3D, it’s the kind of features that lowers the entry barrier of Vorpx a lot for those not with 30XX cards, which are most of us.

    #206152
    Lawrence1962
    Participant

    Wow, vorpX “Super Resolution” ! That is much more than i hoped ! Thx Ralf !

    #206153
    Lawrence1962
    Participant

    If AMD will release FideltyFX Super Resolution 2.0 with a “AI Deep Learning Super Sampling Algorithm” and it is still open source and we can hope for a implementation in vorpx, then that would be great prospects. Perhaps today it is just the beginning !

    #206160
    Ralf
    Keymaster

    Two things worth mentioning:

    1. The most important ingredient of this “Super Resolution” (again congrats to AMDs marketing team for the fairly presumptuous name) really is good old image sharpening after upscaling. Since incidentally vorpX works that way anyway in the headset modes, you already can achieve good results with the sharpening option in the vorpX menu.
    2. The stuff done in addition to the sharpening filter is the icing on the cake and, contrary to my expectation, is worth it quality wise. But it doesn’t come for free. Better (read: more complex) upscaling means more work for the GPU. If the GPU usage is at 100% already, the added workload may have a noticable performance impact on slower GPUs. So whether the extra gain in clarity compared to default upscaling + sharpening is worth it performance wise, may not always be a totally clear decision. After all in VR any image processing has to be computed twice each frame, once for each eye, at high framerates of typically 80 or 90fps. That’s a lot more work for the GPU than doing the same at 60fps while playing in mono on a monitor.
    #206161
    senoctar
    Participant

    I’m wondering what target resolution is used internally for scaling. Is it determined automatically by vorpX based on the HMD’s resolution or could it be user defined in vorpX settings?

    #206163
    Ralf
    Keymaster

    The headset res is computed by vorpX based on the game res and the ‘Crystal Image’ setting in the vorpX menu. The pic above shows a clipped region of an image that was taken at 1440p game resolution, the final headset res was about twice as high.

    #206167
    andrewtsubaro
    Participant

    This is truly amazing! So, how (when) can we use vorpXSR? Will there be an update soon? Will it an option in the menu?

    #206169
    Ralf
    Keymaster

    You can do a good chunk of it already by adjusting the sharpness amount on the image page of the vorpX menu, just as always. That does half of what ‘Super Resolution’ does already.

    The other half will follow with the next vorpX update. Haven’t decided yet how exactly it will be exposed in the menu. Would make most sense to add it to the highest preset of the ‘Crystal Image’ slider, which doesn’t really do much anymore these days anyway aside from affecting the headset resolution. Also that’s an equally silly name as ‘Super Resolution’ (in this case the dubious credit goes to me instead of AMD’s marketeers). That way I wouldn’t have to add another one. But since many people probably will expect the term ‘Super Resolution’ I might also add another silly named option. ;)

    #206170
    Lawrence1962
    Participant

    Does it work in DX12 ? And does it work on top of DLSS ?

    #206184
    senoctar
    Participant

    For Z3D would the process be applied only once on the source image (before depth effect)?

    #206185
    Ralf
    Keymaster

    @ Lawrence1962:

    Yes and yes. DLSS at ‘Quality’ will work perfectly fine together with this. However, upscaling of any kind (DLSS included) always comes with imperfections, so be careful. The lower ‘Performance’ presets usually don’t work that well. Doubly so in a headset where pixels appear way larger than on a TV or monitor. Garbage in, garbage out.

    Consider these things a nice way to gain an extra bit of clarity (or performance when used the other way around), but don’t expect them to do miracles.

    @ senoctar:

    No. Upscaling/sharpening is done at the final stage before the images are sent to the headset, which is the best point in time to do this. Adding it as an extra step in between at an earlier stage would partially negate the gain in clarity later when the image has to be resampled again.

    #206186
    Laser
    Participant

    Great stuff Ralf, can´t wait for Vorpx superduperfsrdlss! Thank you for taking the time to implement this feature.

    #206189
    mr_spongeworthy
    Participant

    Just noticed that you are actually working on implementing this! Very cool to hear.

    Can’t wait to see the final results!

    #206193
    senoctar
    Participant

    Upscaling/sharpening is done at the final stage before the images are sent to the headset, which is the best point in time to do this.

    This is a bit counter-intuitive to me. I assumed applying sharpening after the depth effect would worsen the inherent artifacts (for example making edges more visible on the “halo effect” for third person games).
    If applying FSR right at the end is better it would mean vorpX should yield better results compared to enabling it in-game. At least for quality since the game would process one image instead of two.

    #206194
    Ralf
    Keymaster

    vorpX doesn’t work like a native VR game. There are two stages: first the game gets rendered, then in a second step the image from the first step is rendered to the headset. Now when you sharpen the image between step 1 and step 2 and then resample the upscaled result again while rendering it to the headset later (or drawing it to the cinema screen), part of the prior gain in clarity would get lost.

    Since the process basically involves rescaling the original game image anyway when it is drawn to the headset render target, it would have been foolish to not utilize that. Hence I didn’t just use the premade shaders AMD provides, but instead use the upscaling algorithm as a sampler replacement for the headset render stage. Z3D also is created during this very pass BTW., keeping the number of image resampling steps at the unavoidable minimum.

    TLDR: Less resampling, crisper image.

Viewing 15 posts - 16 through 30 (of 48 total)
  • You must be logged in to reply to this topic.

Spread the word. Share this post!