Nico de Poel
4ad9853a05
- Moved ResourceView into its own source file.
- Using texture arrays is now a boolean flag that can be set on dispatch, removing the need for HDRP-specific checks inside the FSR3 code and shaders.
- Debug view shader is no longer conditionally included.
- Reduced the number of multi-compile variants by removing unused keywords for each shader.
- Optimized temporary RT use; two resources can reuse the same generic intermediate temp RT.
- Reorganized some of the shader code to work nicer with the rest of the FidelityFX SDK sources.
2 years ago
Nico de Poel
c15bd345e6
Fixed another incorrect size
2 years ago
Nico de Poel
428aaa20a7
Implemented macros for SRV/UAV resource definitions that need to support texture arrays in HDRP
2 years ago
Nico de Poel
e8f69d6030
Small bits
2 years ago
Nico de Poel
3a65d37c41
Implemented debug view pass
2 years ago
Nico de Poel
60336253b7
Fixed a couple of incorrect sizes
2 years ago
Nico de Poel
386df536e9
Once again disabled native plugin settings for all header include files
2 years ago
Nico de Poel
befab81785
Added all multi_compile variants to all (new) shader passes. We'll have to figure out later which permutations are actually necessary per shader.
2 years ago
Nico de Poel
61e03ec329
Couple of minor fixes and comment changes
2 years ago
Nico de Poel
78f9142738
Fixed a few small resource binding errors
2 years ago
Nico de Poel
d609eae96f
Added profiling samplers to make debugging a bit easier
2 years ago
Nico de Poel
1bcba64b26
Fixed crash in reactive mask pass due to unused CB binding
2 years ago
Nico de Poel
d6bb123157
Removed unused resource definitions
2 years ago
Nico de Poel
3908ee767b
Modified passes with updated SRV and UAV bindings
2 years ago
Nico de Poel
9bc90e4853
Updated dispatching function with new passes and modified buffer clears
2 years ago
Nico de Poel
aca067bff0
Updated debug checks
2 years ago
Nico de Poel
4a18c3a6c4
Defined the new passes in code and renamed some of the old ones
2 years ago
Nico de Poel
6c024407cb
Defined all of the resources needed for FSR 3.1, left the old stuff intact for now so it still compiles.
2 years ago
Nico de Poel
3cd8b41224
Updated upscaler constants definition and implemented modifications to the constants setup function.
2 years ago
Nico de Poel
0e481544bf
Updated shader assets names and references for the new collection of passes.
2 years ago
Nico de Poel
e61198fe01
Readded type definitions for Unity HDRP and/or PSSL support.
2 years ago
Nico de Poel
16af3cada0
Fixed compiler warnings in shading change pyramid shader
2 years ago
Nico de Poel
d32afe5f90
Added shading change and shading change pyramid passes. All FSR 3.1 shader passes are now compiling.
2 years ago
Nico de Poel
9d99cb157a
Fixes for TCR auto-gen pass
2 years ago
Nico de Poel
83304de177
Removed unnecessary GLSL file
2 years ago
Nico de Poel
c6912f3ffa
Fixes for prepare inputs, prepare reactivity and luma instability passes.
2 years ago
Nico de Poel
a5a2c8784d
Fixes for luminance pyramid pass and gen reactive pass
2 years ago
Nico de Poel
0ab4f99e13
Fixes for accumulate pass
2 years ago
Nico de Poel
c7c640565b
First import of new FSR 3.1 shader sources. Does not compile yet.
2 years ago
Nico de Poel
b03217eebd
Initial update of dispatch parameters and enums for FSR 3.1
2 years ago
Nico de Poel
d21b57083b
Fixed potential nullref when Destroy gets called repeatedly
2 years ago
Nico de Poel
e0cfed7f99
Prevent Unity from treating FFX shader include headers as native plugin code.
2 years ago
Nico de Poel
8b4a7fd78f
Correctly destroy resources when not in play mode
2 years ago
Nico de Poel
72f2aa9da2
HDRP-ified input reactive and T&C masks, which is necessary to make them work inside of HDRP's current upscaling framework
2 years ago
Nico de Poel
69edeb8962
RCAS shader needs an HDRP switch as well, now that the final output image can be a texture array too.
2 years ago
Nico de Poel
e3d36585ef
Fixed aspect ratio in image effect helper too
2 years ago
Nico de Poel
cd8bc8ddba
Removed empty parantheses from macro definition, as it breaks the Unity 2020.1 shader compiler.
2 years ago
Nico de Poel
8e879726d7
Split the FSR3 shaders aggregate class from the scriptable object part. This allows the shader references to be serialized as a single asset still, but also for them to be embedded inline inside of a different scriptable object (for PPV2)
2 years ago
Nico de Poel
734770b75e
Callbacks don't need to be passed to the FSR3 Context anymore.
2 years ago
Nico de Poel
2d05d08f86
Added the ability to clone the shaders, in case multiple FSR3 instances with different configurations are needed.
2 years ago
Nico de Poel
fdcc85355c
Try our best to ensure a shaders asset is assigned to the image effect component.
2 years ago
Nico de Poel
d3d608c95e
Moved shaders from Resources to a regular Shaders folder, discouraging the use of always-included Resources for non-trivial assets.
2 years ago
Nico de Poel
bd98fdf00d
Turned shaders aggregate into a scriptable object, with a default asset instance that automatically resets to look up the correct shader references.
2 years ago
Nico de Poel
84e5e72ab7
Refactored loading of FSR3 compute shaders, using an aggregate object containing pre-loaded compute shaders instead of the old callbacks.
This gives more control to the application about how shaders are loaded/unloaded, and it fits in much more nicely with PPV2's resources.
Shaders are currently just serialized as part of the scene component, which isn't the optimal solution yet.
2 years ago
Nico de Poel
13910c8687
Moved ResourceView out of the Fsr3Upscaler class and into the FidelityFX namespace, making usages of ResourceView a lot cleaner.
ResourceView is also generic enough that it could/should be reused for any other FidelityFX effects, so this move makes sense.
2 years ago
Nico de Poel
ebb9d84171
Rename FSR2 to FSR3 Upscaler, part 3: missing bits.
2 years ago
Nico de Poel
9854cd1279
Rename FSR2 to FSR3 Upscaler, part 2: class and file names.
2 years ago
Nico de Poel
226884b8f5
Removed old FSR2 shader code
2 years ago
Nico de Poel
62a924ae83
Rename FSR2 to FSR3 Upscaler, part 1: strings and comments.
2 years ago
Nico de Poel
d79b84d0ed
Fixed warning in luminance pyramid pass when FP16 is enabled
2 years ago