Commit Graph

12 Commits

Author SHA1 Message Date
014aa7261e Orange branch: OpenEXR finally in Blender!
Credits go to Gernot Ziegler, who originally coded EXR support, and to
Austin  Benesh for bringing it further. Kent Mein provided a lot of code
for integrating float buffers in Blender imbuf and ImBuf API cleanup,
and provided Make and Scons and static linking.

At this moment; the EXR libraries are a *dependency*, so you cannot get
the Orange branch compiled without having OpenEXR installed. Get the
(precompiled or sources) stuff from www.openexr.com. Current default is
that the headers and lib resides in /user/local/

Several changes/additions/fixes were added:

- EXR code only supported 'half' format (16 bits per channel). I've added
  float writing, but for reading it I need tomorrow. :)
- Quite some clumsy copying of data happened in EXR code.
- cleaned up the api calls already a bit, preparing for more advanced
  support
- Zbuffers were saved 16 bits, now 32 bits
- automatic adding of .exr extensions went wrong

Imbuf:

- added proper imbuf->flags and imbuf->mall support for float buffers, it
  was created for *each* imbuf. :)
- found bugs for float buffers in scaling and flipping. Code there will
  need more checks still
- imbuf also needs to be verified to behave properly when no 32 bits
  rect exists (for saving for example)

TODO:

- support internal float images for textures, backbuf, AO probes, and
  display in Image window

Hope this commit won't screwup syncing with bf-blender... :/
2006-01-09 00:40:35 +00:00
8e92ee8684 - remove all obsolete inclusions of BLI_winstuff.h (due to recent changes)
NOTE: BLI_winstuff.h was meant to be a wrapper around windows.h to handle
undefining various crap that windows.h defines. Platform specific headers
should only have to be included in a few places. This reduces the number
of inclusions of BLI_winstuff.h to 16 which is a much more reasonable
number (than the 144 or whatever it used to be)
2005-03-19 21:08:13 +00:00
3c592ec3ad This is for bug # 2068
I standarized the returns on a failed opening of the output file for
the above image formats.

I also cleaned up a couple of warnings.

Kent
2005-01-10 16:22:40 +00:00
3bbc65a5f4 This is a pretty lame commit but here it is:
I just fixed indentation (replaced spaces with tabs where needed) and removed
#include config.h stuff from the above files.

Kent
2005-01-03 19:53:04 +00:00
8cf7f44047 Eeek! last minute error.
Commit of dec 9... still uses fopen(name, "ab") instead of "wb"
Caused targa and bmp files to write wrong on save-over, appended instead.
2004-12-21 18:49:31 +00:00
bdffe196af This fixes bug #1990
It moves targa, bmp, iris and png loading so that were not opening
2 file handles for each file, and made them like the jpeg stuff.

Also cleaned up some minor other stuff.

Kent
2004-12-09 13:09:11 +00:00
d4fc04f76a - increased max targa size to 8192x8192
was done before by Phase in tuho1, and no error found...
2004-01-22 12:59:46 +00:00
af45ac2703 translated comments for imbuf c files 2003-04-27 09:59:36 +00:00
9bb91f9e57 Fix so that rgba targa files view correctly in gimp:
Submitted to bf-committers by Chris Want

Kent

Index: targa.c
===================================================================
RCS file: /cvs01/blender/source/blender/imbuf/intern/targa.c,v
retrieving revision 1.4
diff -u -r1.4 targa.c
--- targa.c     2002/12/20 01:29:14     1.4
+++ targa.c     2002/12/21 09:50:24
@@ -289,6 +289,12 @@

        if (flags & IB_ttob) buf[17] ^= 0x20;

+        /* Don't forget to indicate that your 32 bit
+         * targa uses 8 bits for the alpha channel! */
+        if (ibuf->depth==32) {
+           buf[17] |= 0x08;
+        }
+
        if (write(file, buf, 18) != 18) return (0);
        if (ibuf->cmap){
                for (i = 0 ; i<ibuf->maxcol ; i++){
2002-12-21 09:52:03 +00:00
cf13c60fa4 Two more variables that were not initalized.
cvs diff included below.

Kent
--
mein@cs.umn.edu

Index: png_encode.c
===================================================================
RCS file: /cvs01/blender/source/blender/imbuf/intern/png_encode.c,v
retrieving revision 1.3
diff -u -r1.3 png_encode.c
--- png_encode.c        2002/11/25 12:02:00     1.3
+++ png_encode.c        2002/12/20 01:28:18
@@ -91,7 +91,7 @@
        unsigned char *pixels = 0;
        unsigned char *from, *to;
        png_bytepp row_pointers = 0;
-       int i, bytesperpixel, color_type;
+       int i, bytesperpixel, color_type = PNG_COLOR_TYPE_GRAY;
        FILE *fp = 0;

Index: targa.c
===================================================================
RCS file: /cvs01/blender/source/blender/imbuf/intern/targa.c,v
retrieving revision 1.3
diff -u -r1.3 targa.c
--- targa.c     2002/11/25 12:02:00     1.3
+++ targa.c     2002/12/20 01:28:20
@@ -247,7 +247,7 @@
        char buf[20];
        FILE *fildes;
        int i;
-       short ok;
+       short ok = 0;
2002-12-20 01:29:14 +00:00
d0e346d544 updated .c files to include:
#ifdef HAVE_CONFIG_H
#include <config.h>
#endif

Just need to finish cpp files now :)

Kent
--
mein@cs.umn.edu
2002-11-25 12:02:15 +00:00
Hans Lambermont
12315f4d0e Initial revision 2002-10-12 11:37:38 +00:00