HDRP render textures size reduction when using DLSS in 4K

Happy Monday everyone,

Does anyone know if there is a way to reduce HDRP’s render target sizes when upscaling is used?

When running in 4K with a 2.0 upscaling factor, most of these buffers are using 4x the amount of GPU memory they need to, because we actually rendering everything prior to to the upscale point, at 1920x1080.

So HDPR is allocating these massive buffers adding up to 3GB of GPU RAM, while I’m pretty sure for the majority of those buffers we can allocate at the actual render size prior to the upscaling point.

Is there a manual way to tell HDRP to reallocate at a reduced size maybe? Some kind of hack or work-around?

Thanks!

That dosnt sound good I agree

I’m going a test, setting the RT Handles reference size shortly after applying the upscale factor:

    int width = (int)(Screen.width / _upscaleFactor);
    int height = (int)(Screen.height / _upscaleFactor);

    var hdrp = (HDRenderPipeline)RenderPipelineManager.currentPipeline;
    hdrp.ResetRTHandleReferenceSize(width, height);

This yields a slight improvement… a small subset of buffers indeed switch to 1920x1080…

But the vast majority still reallocates at 3840x2160, so the saving is around 5% maybe.