Commit Graph

72 Commits

Author SHA1 Message Date
ff951270d5 Solve namespace conflicts for ole grumpy MinGW. It seems FLOAT is also defined in a windef.h header. 2012-04-02 13:48:20 +00:00
86c68c0569 Multithreaded EXR files loading
Use multithreaded loading of EXR files which is enabling by call of
setGlobalThreadCount function from OpenEXR library to set up number
of used threads to number of system threads which speeds up loading
high-resolution files on multi-core / multi-cpu systems and allows
to work with high-resolution sequences in clip editor and sequencer.
2012-04-02 11:04:24 +00:00
b8a71efeba style cleanup: follow style guide for/with/if spacing 2012-03-24 07:52:14 +00:00
4f19c1a995 spelling cleanup 2012-03-18 07:38:51 +00:00
89a963fb7f style cleanup: comment blocks 2012-03-09 18:28:30 +00:00
1ae27144f6 Fix for OpenEXR half float save function resulting in dark images saved
Float buffers of ImBuf are always supposed to be linear space a,d ImBuf's
profile means how byte array was constructed from float buffer.
2012-03-05 18:54:57 +00:00
47c373c7a9 style cleanup (mostly whitespace) 2012-02-27 10:35:39 +00:00
30fd1ab523 replace ImBuf.depth with ImBuf.planes to match ImageFormatData.planes & to avoid confusion with ImageFormatData.depth 2011-11-21 20:47:19 +00:00
e417e011d5 Code cleanup: file operations merged into single header, some function names
made less cryptic and changed to indicate if they work on files or directories.
2011-10-22 15:35:49 +00:00
a828845f27 reverting 41124, maybe better solution is to enforce linear space in generated float images 2011-10-20 12:15:39 +00:00
364fcde86d #fix: Saving OpenEXR images as floats ignores color profile. This was not noticable in renderer because it works in linear color space. Painting on the image editor, saving and reloading was problematic though. 2011-10-19 23:04:48 +00:00
c27926896f spaces -> tabs (whitespace only changes) 2011-10-06 22:04:01 +00:00
c58a0c5eb8 catch exception and report an error when failing to write exr files - was crashing with debug builds. 2011-08-30 23:08:38 +00:00
2164847928 fix for openexr include path, for both cmake and scons a custom openexr install wouldn't work since it expected BF_OPENEXR/include and BF_OPENEXR/include/OpenEXR to be in the search path. 2011-06-15 11:50:45 +00:00
Nathan Letwory
192ab99b5c doxygen: blender/imbuf tagged. 2011-02-27 20:23:21 +00:00
Nathan Letwory
5b607701a7 doxygen: prevent GPL license block from being parsed as doxygen comment. 2011-02-23 10:52:22 +00:00
6a2e5ad599 [#25815] Patch gcc 4.6
with minor edits, made sure it works in CMake too.
2011-01-27 00:02:25 +00:00
263830f000 Enabled GCC -Wwrite-strings warning for CMake and replaced many 'char's for 'const char's,.
Only one functional change where Transform orientations passed "" to BIF_createTransformOrientation() which could then have the value written into.
2010-12-03 17:05:21 +00:00
f973be9fe4 Bugfix #21385
Blender MultiLayer openEXR files now save with correct scanline order.
Code also provides backward compatibility. Also thanks to Troy Sobotka!
2010-11-27 19:33:40 +00:00
5a09368957 use 'const char *' for imbuf and file ops. 2010-11-19 02:14:18 +00:00
1e245cc589 option to write images to a files on single frame renders, this isn't accessed by the UI at the moment, but could eventually be used for saving test-renders.
The main reason to have this is so renders can be scripted to write to a specific file without having to do annoying tricks like set a dummy start/end frame range, render an animation and work out the current frame image will be written to, then rename after rendering.

Also made some 'char *' args into 'const char *'
2010-11-16 14:40:46 +00:00
8268a4be71 most unused arg warnings corrected.
- removed deprecated bitmap arg from IMB_allocImBuf (plugins will need updating).
- mostly tagged UNUSED() since some of these functions look like they may need to have the arguments used later.
2010-10-16 14:32:17 +00:00
a8db76f00e fix for error in last commit. 2010-09-15 08:00:19 +00:00
f5957e6237 own recent commit which added support for writing srgb float buffers broke writing char buffers as half EXR's. 2010-07-15 13:32:20 +00:00
731824c464 support for colorspace conversion when saving srgb float buffers (from the sequencer) as openexr. 2010-07-12 14:54:05 +00:00
9e57892b90 dont add a rect buffer for EXR's, the sequencer discards them immediately and functions that need a rect should create one on the fly.
this shows a problem with Imbuf where there is no way to ask to only load the native type byte/float.
2010-07-12 13:35:00 +00:00
b9e241d3e3 error in last commit 2010-07-12 12:07:32 +00:00
51d8c5d93f [#22824] OpenEXR Save from byte buffer bug
- Saving a typical byte buffer as an exr wasnt converting into linear colorspace.
- Remove checks for 1 and 2 channel images, these will write as RGB anyway and are very rare.
- 3 Channel images were having the alpha channel written from the red color channel, write 1.0 instead.
2010-07-12 11:28:16 +00:00
7f575ddf89 revert 28807, fix for [#21385] Multilayer OpenEXR files import into other compositors upside down
looks like a threading problem:
 Easy to redo, 1024x436, FSA, 4 threads.

With 1 thread it runs ok, need to look into this further but no time now so reverting.
2010-05-19 16:23:09 +00:00
9c3c7f970f no functional changes, simplify some exr api code. 2010-05-17 16:42:53 +00:00
d5f74baa17 [#21385] Multilayer OpenEXR files import into other compositors upside down
famous upside down EXR bugfix from Xavier Thomas

- Files from blender 2.4x will be flipped on load.
- New files will be saved correctly

tracker has detailed info for further reference.
2010-05-17 15:54:57 +00:00
5774e61f4a shouldnt have committed this, was local hack to workaround float buffer bug. 2010-05-07 15:52:16 +00:00
d972b8488e fix for segfault when reading bad multilayer EXR's 2010-05-07 15:49:21 +00:00
008863daec Merge image related changes from the render branch. This includes the image
tile cache code in imbuf, but it is not hooked up to the render engine.


Imbuf module: some small refactoring and removing a lot of unused or old code
(about 6.5k lines).

* Added a ImFileType struct with callbacks to make adding an file format type,
  or making changes to the API easier.
* Move imbuf init/exit code into IMB_init()/IMB_exit() functions.
* Increased mipmap levels from 10 to 20, you run into this limit already with
  a 2k image.
* Removed hamx, amiga, anim5 format support.
* Removed colormap saving, only simple colormap code now for reading tga.
* Removed gen_dynlibtiff.py, editing this is almost as much work as just
  editing the code directly.
* Functions removed that were only used for sequencer plugin API:
  IMB_anim_nextpic, IMB_clever_double, IMB_antialias, IMB_gamwarp,
  IMB_scalefieldImBuf, IMB_scalefastfieldImBuf, IMB_onethird, IMB_halflace,
  IMB_dit0, IMB_dit2, IMB_cspace
* Write metadata info into OpenEXR images. Can be viewed with the command
  line utility 'exrheader'

For the image tile cache code, see this page:
http://wiki.blender.org/index.php/Dev:2.5/Source/Imaging/ImageTileCache
2010-05-07 15:18:04 +00:00
081c1205a3 correct fsf address 2010-02-12 13:34:04 +00:00
04dec46c6a Color management fixes
Now it's a bit more robust, tagging images with profiles when they're loaded, 
which then get interpreted later on by conversion functions. Just Linear RGB 
and sRGB profiles at the moment, same as before.

This commit fixes Martin's problem with EXRs and Multilayer images loading/
saving too dark, and it also makes the sequence editor work correctly with it too.

Also fixes:
[#19647] gamma correction with color management is reset when resetting Curve
[#19454] 2.5: Dither does not work when Color management is enabled
2010-01-09 00:16:35 +00:00
b39f73431a [#19232] (2.5) Correction of cmake for windows about audio (jack and openal)
from Guillaume Lecocq (lguillaume) 

[#19247] (2.5) useless WITH_OPENEXR redefinition
from Mauro Toffanin (equilibrium)
2009-08-24 10:07:49 +00:00
c8b4cf9206 2.50:
svn merge https://svn.blender.org/svnroot/bf-blender/trunk/blender -r19820:HEAD

Notes:
* Game and sequencer RNA, and sequencer header are now out of date
  a bit after changes in trunk.
* I didn't know how to port these bugfixes, most likely they are
  not needed anymore.
  * Fix "duplicate strip" always increase the user count for ipo.
  * IPO pinning on sequencer strips was lost during Undo.
2009-06-08 20:08:19 +00:00
aeb2225a28 2.50: some warning fixes. 2009-03-17 22:27:15 +00:00
0c23d0c2ad Bugfix #17327
Small one: changed the string attribute in multilayer exr files to be:

"2.43 and newer"

To indicate that it's about compatibility of the exr file, not the version
Blender saved it in.
2008-07-14 10:26:11 +00:00
d0d179dce6 Buhh... and now I left in testing print in exr code. 2008-07-09 15:25:34 +00:00
180a7d1f62 Replaced strcasecmp with BLI_strcasecmp, to make msvc happy! 2008-07-09 13:12:58 +00:00
bad6b003db Fix for reported openexr file reading failures.
For simple RGB(A) files, the channel names in openexr were supposed
to be simply "R" "G" "B" and "A" too.
Other programs like other names... like lower case, or like "ambient.r"

Tested with file from renderman.
2008-07-09 10:51:03 +00:00
391bd70d42 Fix for bug #9014: crash saving the depth pass with openexr or hdr,
both file formats crashed on saving images with less than 4 channels.
2008-04-29 16:57:39 +00:00
03402b8419 - Removed the Save Buffers/FSA restriction that the width and height
must be divisible by the number of parts.
- OpenEXR code also has some changes to allow writing mipmapped images,
  but that is unused at the moment.
2008-02-06 13:45:07 +00:00
Ken Hughes
0a27a31970 Clean-up for various gcc warnings under linux. 2008-02-03 01:33:35 +00:00
70c413d4ad Fixes in reading back rendered temp files ("Save buffers" and "FSA" options).
Press Rkey in compositor for reading back render results and invoke a compo.
This now correctly reads AO (skipped it sometimes) and it makes a correct
composite.

FSA todo:
- hotkey + button for reading all samples back + composite
- solve black border around image
2008-01-30 21:14:36 +00:00
9b0c2efeed Handle OpenEXR exception and print it, for writeTile. It's sometimes
crashing there now with FSA, if it crashes again this should give
more info.
2008-01-28 21:28:32 +00:00
Nathan Letwory
e3ff98fc6b === OpenEXR ===
* fix [ #6105 ] Blender crashes when opening multilayer with node in compositor
  - Mem_IStream membuf was allocated on the stack, so it caused major troubles when
 out of the function scope. Now allocate it on the heap and let OpenEXR deal with
 freeing it.
  - moved + added delete file;'s for completeness
2007-03-27 10:13:57 +00:00
d1b17f8c30 ==== MSVC 7.1 project files ====
- fix for 3DPlugin compile
- cleanup of bullet path
- removed PHY_ODE project from 3D plugin too, not used anymore

Now all configurations should build again, let me know of any problems!

Not been able to test if the 3DPlugin is actually working,is job for another day ;)
Also the 3DPlugin is compiled without OpenExr, this needs to be looked into once too.
2007-03-03 11:28:15 +00:00