Orange;
authorTon Roosendaal <ton@blender.org>
Wed, 11 Jan 2006 22:36:31 +0000 (22:36 +0000)
committerTon Roosendaal <ton@blender.org>
Wed, 11 Jan 2006 22:36:31 +0000 (22:36 +0000)
commit0665f0d64799e6a38c4ca0930df73271f246e422
treefa488d33452f0bfc6ec91e5bbbec726afcbcb9f3
parentb92fa4151645d50e40faa8f4aaea4b7f6149947c
Orange;

Until now, the zbuffer was written straight from the internal zbuffer,
which has values that are inverse-proportional (like 1.0/z) which makes
it very hard to use it for postprocess, like zblur or other composit effects
that require Z.

Based on info from ILM, the values stored for Z in exr files is the
actual distance from a camera. I think that's about time to migrate to that
convention!

By default now, after render, the z values are converted to floats. This
saves in exr files now, but not in the Iris Z files. That latter was a
blender-only anyway, so might be not a real hassle to drop. :)

You can see the difference in the image window, but notice the range now
is linear mapped from camera clipstart to clipend.

Note; I just discover that ortho Z values need a different correction...
18 files changed:
source/blender/imbuf/IMB_imbuf.h
source/blender/imbuf/IMB_imbuf_types.h
source/blender/imbuf/intern/allocimbuf.c
source/blender/imbuf/intern/divers.c
source/blender/imbuf/intern/openexr/openexr_api.cpp
source/blender/include/BIF_glutil.h
source/blender/render/extern/include/render_types.h
source/blender/render/intern/source/initrender.c
source/blender/render/intern/source/rendercore.c
source/blender/src/drawimage.c
source/blender/src/drawseq.c
source/blender/src/drawview.c
source/blender/src/editsima.c
source/blender/src/glutil.c
source/blender/src/header_image.c
source/blender/src/previewrender.c
source/blender/src/renderwin.c
source/blender/src/toets.c