12 Commits (e8f69d60302b194b641d50ba49b9ceb18021e4ef)

Author SHA1 Message Date
Nico de Poel e8f69d6030 Small bits 2 years ago
Nico de Poel 3a65d37c41 Implemented debug view pass 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 3908ee767b Modified passes with updated SRV and UAV bindings 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 0e481544bf Updated shader assets names and references for the new collection of passes. 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. 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 62a924ae83 Rename FSR2 to FSR3 Upscaler, part 1: strings and comments. 2 years ago
Nico de Poel c2f397892f Forward ported TCR autogen pass to fit in with the rest of the FSR3 shader code 2 years ago
Nico de Poel c83c3e5805 Cleaned up compute shader initialization, as the Nvidia-specific FP16 exception for the accumulate stage doesn't seem to be required anymore. 2 years ago
Nico de Poel fa1704e65f First working proof of concept of FSR3 upscaling in Unity 2 years ago
Nico de Poel c010b6aa28 Renamed Pipelines to Passes 2 years ago
Nico de Poel 47cba76dee Made all RenderTargetView fields non-nullable, and introduced a special Empty value for optional fields. 2 years ago
Nico de Poel e8d12c201e - Reworked input/output resource management using a new RenderTargetView struct, which encompasses all relevant data required to bind textures from various sources. 2 years ago
Nico de Poel b3bc46fcb7 Moved management of aliasable resources to the Fsr2Resources class and gave the methods more logical names. 3 years ago
Nico de Poel 3f17ca1fe2 Revert "Create temporary resources at actual render size, further reducing VRAM usage when dynamic resolution is in effect." 3 years ago
Nico de Poel 45ce81610d Restored compatibility with Unity versions older than 2021.2, which didn't have the LocalKeyword struct yet. 3 years ago
Nico de Poel a2c1211d98 Create temporary resources at actual render size, further reducing VRAM usage when dynamic resolution is in effect. 3 years ago
Nico de Poel 63d6fd3203 Changed atomic counter from a temporary RT to a permanent one, and set it to 0 only on the first frame. Potential fix for auto-exposure on MacOS. 3 years ago
Nico de Poel 47c2560476 Consolidated accumulate and accumulate+sharpen pipelines into a single pipeline, with the sharpening option being changed into a local keyword that can be enabled or disabled on-the-fly. 3 years ago
Nico de Poel 501b1b0638 Added workaround for HDRP using texture arrays for its camera buffers on some platforms 3 years ago
Nico de Poel ef20869c48 Added support for experimental auto-TCR generation pass 3 years ago
Nico de Poel 9f887a5c3c Check shader after loading it, throw an exception with a message on failure. This is better than having a random nullref happen, if the shaders cannot be loaded for whatever reason. 3 years ago
Nico de Poel 47d40fb71d More accurate representation of where SystemInfo.computeSubGroupSize is available 3 years ago
Nico de Poel e0027ed77a Added MIT license header to every source file, similar to the FFX FSR2 codebase 3 years ago
Nico de Poel 1cc0de7c89 Moved Shader ID constants to a separate class file 3 years ago
Nico de Poel 1ff980bea9 Changing my mind yet again about directory names 3 years ago
Nico de Poel da651c3d6f Moved some files 3 years ago
Nico de Poel 8f1be6d3e6 Re-added transparency & composition parameter, even though we never use it and just fall back to the default reactivity mask, we officially support it as an input now. 3 years ago
Nico de Poel 54849cee0f Use RenderTargetIdentifier magic to bind UAV outputs to SRV inputs, making obsolete the monkey patching of shaders. 3 years ago
Nico de Poel 5ed7a5279b Progressed implementation of reactive mask generation pass. 3 years ago
Nico de Poel c1326fc261 Added some comments to the main FSR2 classes 3 years ago
Nico de Poel 86c16e3694 - Replaced all input/output parameters with RenderTargetIdentifiers, allowing more flexibility in how these resources are assigned 3 years ago
Nico de Poel 776700e837 Allow input textures to be set outside of FSR2 context dispatch, opening up new avenues for optimizations. 3 years ago
Nico de Poel 903c2f71f3 Updated code to make it compatible with Unity 2020.1, i.e. the oldest version that's technically usable. 3 years ago
Nico de Poel 12b5791cd2 Enabled 16-bit floating point support by changing the unused 1D Texture option into an FP16 option, which makes its usage configurable by the game dev. 3 years ago
Nico de Poel 6c15840df8 Fixed LUT data by using R32_SFloat format instead. Increases VRAM usage a bit but for these small LUTs that's okay. 3 years ago
Nico de Poel 0f584b1098 Implemented generate reactive pass, which can be used separately from the main FSR2 upscale process. 3 years ago
Nico de Poel dafae40776 Further tweaks to camera jitter parameters and now IT'S WORKING!! 🥳 3 years ago
Nico de Poel 1ca5a36f3e Cleanup and minor details 3 years ago
Nico de Poel 13eb24289e Initial implementation of accumulation pass. It's doing... something but it's definitely not correct yet. 3 years ago
Nico de Poel d044cf2789 Moved resources into their own source file, to make it easier to pass them to pipelines in bulk. Added creation of resources for the accumulate pass. 3 years ago
Nico de Poel 6b74532793 Some cleanup and a few small details 3 years ago
Nico de Poel 650e805af8 Combined color and depth into a single dispatch parameter, which makes it easier to follow what's going on at the various stages. 3 years ago
Nico de Poel c184748907 Separate out depth from the color buffer using RenderTextureSubElement, which does work now. 3 years ago