From d3c4b97e2f2dff846d2ce9e17ff5ec137cf7f075 Mon Sep 17 00:00:00 2001 From: Reiner Dolp <770508+reiner-dolp@users.noreply.github.com> Date: Sun, 8 Dec 2019 15:11:10 +0100 Subject: [PATCH] Export 32bit floating point textures to 32bit floating point EXR files --- renderdoc/replay/replay_controller.cpp | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/renderdoc/replay/replay_controller.cpp b/renderdoc/replay/replay_controller.cpp index 447bc37bb..b0c4f7751 100644 --- a/renderdoc/replay/replay_controller.cpp +++ b/renderdoc/replay/replay_controller.cpp @@ -1506,6 +1506,14 @@ bool ReplayController::SaveTexture(const TextureSave &saveData, const char *path int reqTypes[4] = {TINYEXR_PIXELTYPE_HALF, TINYEXR_PIXELTYPE_HALF, TINYEXR_PIXELTYPE_HALF, TINYEXR_PIXELTYPE_HALF}; + if(saveFmt.compByteWidth == 4) + { + for(size_t channel = 0; channel < 4; channel++) + { + reqTypes[channel] = TINYEXR_PIXELTYPE_FLOAT; + } + } + // must be in this order as many viewers don't pay attention to channels and just assume // they are in this order EXRChannelInfo bgraChannels[4] = {