148 Commits (3f17ca1fe22f643b08afabd632faec808f85e171)

Author SHA1 Message Date
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 5a0edc2063 Reset dynamic buffer scale when exiting play mode 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 5236c28e7e Added support for dynamic resolution scaling using ScalableBufferManager. 3 years ago
Nico de Poel cf316ebf4f Comment that the atomic counter shouldn't be aliasable 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 7798ae524c Added various controls for changing FSR2 settings at run-time 3 years ago
Nico de Poel 65280ebf7a Further refinement to clarity and comments of the BiRP integration 3 years ago
Nico de Poel ff879b658d Reworked image effect integration, splitting things up into separate methods to improve readability and comprehension. 3 years ago
Nico de Poel 4f0edf6049 Simplified a bunch of code and removed some unnecessary bits. Mipmap bias is applied more safely now. Context gets reset if auto exposure bool changes. 3 years ago
Nico de Poel 5a0482f0bc Comments and tooltips 3 years ago
Nico de Poel 537d96d3b6 Explicitly create and destroy the opaque-only RT before and after rendering, so that it remains valid throughout. Fixes the ESRAM-related visual jittering issue on Xbox One when auto-reactive or auto-TCR is enabled. 3 years ago
Nico de Poel 53e8164f0e Clear the atomic counter used by the luminance pyramid pass. This fixes auto-exposure being broken and causing a black screen on some platforms (Xbox, OpenGL). 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 8b3a1a7545 Implemented auto-TCR generation feature in BiRP integration example 3 years ago
Nico de Poel ef20869c48 Added support for experimental auto-TCR generation pass 3 years ago
Nico de Poel a2d670d0f8 Added a dummy field to the main FSR2 constant buffer, to make it exactly 128 bytes long. This fixes a data alignment issue on iOS Metal. 3 years ago
Nico de Poel fad865f8bc Went back to HDR being derived from camera HDR settings. Maybe not entirely correct, but definitely less error prone. 3 years ago
Nico de Poel 6dbf4b69e2 Added checks to avoid problems when an invalid render size is used 3 years ago
Nico de Poel 490a76986c Enable HDR by default and clarified the tooltip somewhat 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 b1a7f48abb Made HDR into an explicit toggle that can be set by the application, rather than a best guess based on the camera settings 3 years ago
Nico de Poel e335624ae1 Removed the backbuffer check, as it caused a false positive when a second overlay camera is active on top of the FSR2 output. 3 years ago
Nico de Poel 38cc3a83fd Don't validate input/output resources on reset, so the application has a way to prevent error messages when re-enabling a camera. 3 years ago
Nico de Poel 47d40fb71d More accurate representation of where SystemInfo.computeSubGroupSize is available 3 years ago
Nico de Poel 8c95269c69 Added explanatory comments to the helper script 3 years ago
Nico de Poel 0837aa50cb Removed the separate output color/depth render texture parameter, as it was very much redundant. 3 years ago
Nico de Poel f38b37cb2d Changed DefaultFormat into a method and placed it next to the other helper methods 3 years ago
Nico de Poel bfa9d5196a Made Callbacks into a property and just use rounding to int for dealing with floating point inaccuracies. 3 years ago
Nico de Poel 73fa30927b Got rid of the global callbacks thing and made callbacks a local field of the Fsr2ImageEffect script. 3 years ago
Nico de Poel f6da12c854 Brought back Ultra Quality mode (1.2x) scale, likely for good this time. 3 years ago
Nico de Poel 79046f40b3 Added a sample scene with two cameras, one upscaling and outputting to a render texture, the other applying post-FX and outputting to the display. 3 years ago
Nico de Poel 644349b16b Respect output target texture's dimensions when determining render size and rescaling camera viewport. 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 495350f569 Allow outputting to a user-provided color + depth buffer and optionally a motion vectors buffer. 3 years ago
Nico de Poel 1c030377c0 Reshufled some code so that if the initialization process fails for some reason, we don't leave the scene behind in a messed up state. 3 years ago
Nico de Poel ce9a64cba5 Figured out a way to support cameras with target textures, that avoids errors about depth buffer mismatch. 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 03fd58cb5a Check for compute shader support when enabling FSR2, and moved debug checking flag to default context creation method. 3 years ago
Nico de Poel 0db7773ed9 Added a helper script to allow OnPreCull to happen at a different location in the camera stack from the image effect script. 3 years ago
Nico de Poel d02fc3cec1 Eliminated High Quality and Native modes again because you know what? AMD were right with their presets. 3 years ago
Nico de Poel eaecd40cc4 Set default scale value to 0.5 as that seems to work better in multiple contexts 3 years ago
Nico de Poel 06a2658080 More renaming 3 years ago
Nico de Poel 3e31950d56 Changed Fsr2Callbacks into an interface + base implementation 3 years ago
Nico de Poel da651c3d6f Moved some files 3 years ago
Nico de Poel ee4d2d43ae Use render size for motion vector scale, since we are rendering them at lower resolution. 3 years ago
Nico de Poel d232e3e07b Removed separate command buffer for binding input buffers, which really wasn't needed anymore. 3 years ago