2
$\begingroup$

I use Tools -> External-> Quick Edit in the Texture Paint mode to enhance baked textures. While the renders I overlay are in 32-bit dynamic range the Quick Edit image is 8-bit. Is it possible to increase dynamic range of the Quick Edit exports into Gimp/Photoshop to 16 or 32 bits?

$\endgroup$
7
  • 1
    $\begingroup$ Not sure, but I assume this depends on the file format. For Quick Edit the extension is hard coded to .png. Here is a new operator to export the file as exr: gist.github.com/p2or/f80aff9b94645703626d, I don't have photoshop access at the moment and my Gimp version only supports 8 bit. Could you test it? As you know for sure: run the script, hit the spacebar in 3d View and type Project Edit EXR. $\endgroup$
    – p2or
    Jan 5 '16 at 13:16
  • $\begingroup$ Thanks for the tip @poor, your script does work for me -- I was able using your approach to create EXR file, open it in Gimp 2.9.3 and modify it using another EXR image perfectly well, however I was not successful in applying the result back so far. $\endgroup$
    – dimus
    Jan 6 '16 at 0:03
  • $\begingroup$ Ok, great! Did you tested whether the exr has a real 32bit depth? $\endgroup$
    – p2or
    Jan 6 '16 at 10:35
  • $\begingroup$ I got 16 float exr, which actually was my goal $\endgroup$
    – dimus
    Jan 6 '16 at 11:28
  • $\begingroup$ nope, no cigar, final UV texture shows loss of dynamic range information $\endgroup$
    – dimus
    Jan 6 '16 at 22:14
1
$\begingroup$

I did come with a procedure which uses EXR files

Goal

To be able to create >8 bit color depth when creating texture camera projections

Procedure

Blender v2.7.6.2, GIMP v2.9.3

I created an example file to illustrate the workflow

  • Make 32 bit texture (UV-Tex) for the UV texture
  • Set Cycles as your renderer
  • Set Output for render to OpenEXR Float(Half), RGBA
  • Set lights, cameras
  • Create material for your model
  • Create a texture node for baking, set it to UV-Tex, leave active (with orange border)
  • Bake
  • Save result of baking to EXR file
  • Clean UV-Tex for projection
  • Select a camera, render, save result as EXR Float(half) RENDER
  • Edit EXR to suit your needs
  • Switch to 'Texture Paint Mode' Display object as 'Texture'
  • You should have 'External' tab now in the toolbox in 3D view.
  • In the Node view go to the texture node, and upload EXR RENDER file (This step is important, if you don't make it active in node editor, and try to project EXR image you will get "RuntimeError: Error: Image data could not be found")
  • Switch Texture node back to UV-Tex
  • In "External" menu click "Apply Camera Image" select RENDER file
  • UV-Tex should have your projected EXR image now

All is working fine, however the very last step degrades the image to 8-bit depth, even if the final file is 32 bit. I am trying to figure out if it can be fixed, and will update this post, if I'll succeed.

ADDENDUM The Issue had been solved in Blender master branch and high definition projections should be possible from that moment on, Thanks Campbell!

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.