- Home /
Banding with HDR setup?
What are the proper steps to render to a 32 bit buffer and process with a tonemapping shader?
This is what I'm doing:
RenderTexture rtHDR = RenderTexture.GetTemporary (source.width, source.height , 0, RenderTextureFormat.ARGB32); m_HDR_Material.SetTexture ("_HDR", rtHDR); Graphics.Blit (source, rtHDR);
//_________FINAL OUTPUT TO SCREEN
Graphics.Blit (rtHDR, destination,m_HDR_Material, 0); //TONEMAP SHADER
RenderTexture.ReleaseTemporary (rtHDR);
I'm seeing banding in my HDR texture using this approach, which means it is not 32 bit; the banding is so severe, I doubt it's even 16 bit.
The HDR's are set to ARGB32 in the texture importer, and they are 32 bit EXR's.
Does anyone have any suggestion for me to try? I'm not sure what else to try.
Answer by Robert 3.du · Oct 15, 2010 at 11:15 PM
As far as I know, ARGB32 refers to 32bit for all channels, meaning that it is just 8 bit per channel R, G, B or A. You would need more, 32bit hdr is actually 96bit for all three channels. As far as I know, unity3d doesn't support this right now?
Cheers
Robert
Answer by elmax · May 26, 2017 at 05:12 AM
should be
RenderTextureFormat.ARGBFloat
to get 32 bit per channel
and probably also set
RenderTextureReadWrite.Linear;
for the temp RenderTex to skip gamma conversion
Your answer
Follow this Question
Related Questions
Combining gamma calibration and tone mapping 0 Answers
No skybox slot in lighting menu and staging in the scene doesn't work in HDRP Unity 2018.3 0 Answers
Unable to Use HDRP? Failed to Decompress? 0 Answers
Bloom Not Working Using HDRP 0 Answers
Green Creep? Any idea what might be causing this visual glitch? 0 Answers