Commit Graph

34015 Commits

Author SHA1 Message Date
Campbell Barton
86a72ae064 fix for node socket text buttons not scaling with DPI, also quiet -Wundef warning WITH_DDS. 2012-09-16 23:24:26 +00:00
Sv. Lockal
b1d1355f30 Fix drawing of output slots with utf-8 names. Also always show last letters in already clipped output slots names 2012-09-16 19:06:17 +00:00
Antony Riakiotakis
237a9fde92 Enable OpenColorIO for MinGW64 build targets 2012-09-16 18:05:32 +00:00
Bastien Montagne
e5d0dcb8d8 Few cleanup in matrix mathutils (make mul_m3_m3m4 and mul_m4_m3m4 consistant with other similar funcs, mainly copy-safe [i.e. you can use the same matrix as operand and result, saves lines in some already over-complicated code!]). 2012-09-16 15:25:28 +00:00
Sergey Sharybin
fc7de23537 Color Management: fix crash when displaying render preview if OCIO was disabled buildtime 2012-09-16 15:17:22 +00:00
Joshua Leung
a9d9bf7909 Code cleanup - Remove/update outdated comments and whitespace tweaks 2012-09-16 11:19:36 +00:00
Campbell Barton
e84b300d9e use the format attribute in more places, disable X11 options when building with GHOST_SDL 2012-09-16 10:39:19 +00:00
Campbell Barton
b3d2ea28ce speedup for vertex parent lookups, were looping over array elements when it wasn't needed for lattice and curves, and in some cases meshes.
do dirrect array lookups instead where possible.
2012-09-16 08:25:31 +00:00
Joshua Leung
de8c802904 Bugfix [#32501] Protected layer bones transform buttons are greyed out/inactive
Since the transform values for bones in protected layers can be animated again
using many of the common tools, it makes sense that the transform properties for
these are allowed to be edited too.

I've left the rotation mode setting as a "proxy locked" value for now, since
this seems more like something that's defined as part of the rig creation (and
best left alone by animators).
2012-09-16 07:27:43 +00:00
Joshua Leung
58d520324e Code cleanup - remove some obsolete code 2012-09-16 07:14:15 +00:00
Campbell Barton
2fb8292005 style cleanup 2012-09-16 04:58:18 +00:00
Campbell Barton
c2a1dcf621 fix for error in recent commit (made function static that shouldn't have been), add extra gcc warnings to cmake. 2012-09-16 01:35:00 +00:00
Campbell Barton
d724d0adfe code cleanup: quiet warnings for gcc's -Wundef, -Wmissing-declarations 2012-09-16 00:26:36 +00:00
Campbell Barton
beac985ab7 code cleanup: make local game engine functions static 2012-09-16 00:22:55 +00:00
Campbell Barton
518c80fc94 remove unused parts of raskter module. 2012-09-15 23:05:34 +00:00
Sergey Sharybin
2390a2657e Merged this part of code by mistake. 2012-09-15 15:17:51 +00:00
Campbell Barton
232571c61a code cleanup: replace macro for BLI_rect size/center with inline functions. 2012-09-15 11:48:20 +00:00
Campbell Barton
219b748dfc fix for bug in txt_undo_read_uint32() reading 4byte unicode values. 2012-09-15 10:40:05 +00:00
Sergey Sharybin
6994750679 Fix for collada -- some intermediate patch remained untweaked there 2012-09-15 10:11:58 +00:00
Sergey Sharybin
a73dd3476e Color Management, Stage 2: Switch color pipeline to use OpenColorIO
Replace old color pipeline which was supporting linear/sRGB color spaces
only with OpenColorIO-based pipeline.

This introduces two configurable color spaces:

- Input color space for images and movie clips. This space is used to convert
  images/movies from color space in which file is saved to Blender's linear
  space (for float images, byte images are not internally converted, only input
  space is stored for such images and used later).

  This setting could be found in image/clip data block settings.

- Display color space which defines space in which particular display is working.

  This settings could be found in scene's Color Management panel.

When render result is being displayed on the screen, apart from converting image
to display space, some additional conversions could happen.

This conversions are:

- View, which defines tone curve applying before display transformation.
  These are different ways to view the image on the same display device.
  For example it could be used to emulate film view on sRGB display.

- Exposure affects on image exposure before tone map is applied.

- Gamma is post-display gamma correction, could be used to match particular
  display gamma.

- RGB curves are user-defined curves which are applying before display
  transformation, could be used for different purposes.

All this settings by default are only applying on render result and does not
affect on other images. If some particular image needs to be affected by this
transformation, "View as Render" setting of image data block should be set to
truth. Movie clips are always affected by all display transformations.

This commit also introduces configurable color space in which sequencer is
working. This setting could be found in scene's Color Management panel and
it should be used if such stuff as grading needs to be done in color space
different from sRGB (i.e. when Film view on sRGB display is use, using VD16
space as sequencer's internal space would make grading working in space
which is close to the space using for display).

Some technical notes:

- Image buffer's float buffer is now always in linear space, even if it was
  created from 16bit byte images.

- Space of byte buffer is stored in image buffer's rect_colorspace property.

- Profile of image buffer was removed since it's not longer meaningful.

- OpenGL and GLSL is supposed to always work in sRGB space. It is possible
  to support other spaces, but it's quite large project which isn't so
  much important.

- Legacy Color Management option disabled is emulated by using None display.
  It could have some regressions, but there's no clear way to avoid them.

- If OpenColorIO is disabled on build time, it should make blender behaving
  in the same way as previous release with color management enabled.

More details could be found at this page (more details would be added soon):
http://wiki.blender.org/index.php/Dev:Ref/Release_Notes/2.64/Color_Management

--
Thanks to Xavier Thomas, Lukas Toene for initial work on OpenColorIO
integration and to Brecht van Lommel for some further development and code/
usecase review!
2012-09-15 10:05:07 +00:00
Sergey Sharybin
8add19d3ec Fix compilers warnings when legacy compositor is disabled 2012-09-15 07:50:14 +00:00
Campbell Barton
5dbd603363 code cleanup: remove more invalid/paranoid NULL checks 2012-09-15 07:42:30 +00:00
Campbell Barton
fed6b2bcb7 code cleanup: remove paranoid/invalid NULL checks and also reduce some unneeded size_t -> int conversions. 2012-09-15 07:31:17 +00:00
Campbell Barton
b85056cbf4 fix for error in own recent commit adding node undo pushes. (bad use of sizeof) 2012-09-15 07:30:11 +00:00
Campbell Barton
19863a7268 fix for 3 obvious mistakes/bugs. 2012-09-15 06:30:40 +00:00
Campbell Barton
77ed2d8ca9 code cleanup: remove paranoid NULL checks (these cases would crash earlier of the vars were in fact NULL) 2012-09-15 06:29:32 +00:00
Campbell Barton
aa364bb366 fix incorrect macro for mask handle selection checking. 2012-09-15 06:10:48 +00:00
Campbell Barton
d98dd2585f code cleanup: replace memcpy for copy_v3_v3(), and fix for unlikely crash - if (ob->mat == NULL && ob->totcol) 2012-09-15 06:03:49 +00:00
Sergey Sharybin
c73cd2fb6a Silent compiler's warnings about tracking module 2012-09-15 05:01:52 +00:00
Campbell Barton
abce099804 code cleanup: quiet some windows warnings. 2012-09-15 04:57:51 +00:00
Campbell Barton
f9d9459e3f code cleanup: modify DO_INLINE define to not use __inline with mingw
make RegisterBlendExtension_Fail a static func
       u
2012-09-15 02:29:47 +00:00
Campbell Barton
e75f5c8208 quiet -Wmissing-prototypes warnings, and enable this warning by default for C with gcc.
helps for finding unused functions and making functions static, also did some minor code cleanup.
2012-09-15 01:52:28 +00:00
Campbell Barton
37748b1e08 fix [#32381] Sculpt: crash when using radius sensitivity 2012-09-14 23:34:00 +00:00
Gaia Clary
a77d048f66 Collada: #32549 partial fix: packed images now export correctly 2012-09-14 22:31:26 +00:00
Sergey Sharybin
b48398c96a Correction to rev50582: LABEL could have a1 = 1.0f and in this case a2 would be used as alpha multiplier for icon 2012-09-14 16:41:00 +00:00
Sergey Sharybin
8791eaa5b0 Movie cache: made it thread safe to operate with memory limitor
Movie cache is using global memory limitor, which isn't thread safe
in some of operations, so it required to add mutex around limitor
operations in movie cache.

It's probably could be solved in a way with less locks involved by
using different limitor for different areas (like use own limitor
for clips, own limitor for sequencer and so), but that wouldn't be
so easy to control overall memory usage.

--
svn merge -r50125:50126 ^/branches/soc-2011-tomato
2012-09-14 14:55:59 +00:00
Sergey Sharybin
cd4ffe496a Sequencer: clear cache and animation buffers for strips outside of cursor when rendering
This avoids having bunch of cached images when doing animation rendering,
keeping all the memory available for rendered itself.

This keeps memory usage low when rendering huge edits with mixed
scenes and movie strips.

This should not affect on sped of video encoding, which was confirmed by
some own tests.

--
svn merge -r50051:50052 ^/branches/soc-2011-tomato
2012-09-14 14:28:24 +00:00
Brecht Van Lommel
c849928d1c Code cleanup: removed unused Cocoa image load/save code. 2012-09-14 11:42:05 +00:00
Campbell Barton
e762797af5 fix for sharp edge selection being inverted, change default angle from 1 to 30deg. 2012-09-14 11:10:03 +00:00
Campbell Barton
7a71f58af3 fixes for NULL checks, remove some redundant checks and add some in that have been removed by accident as code has been updated. 2012-09-14 06:17:14 +00:00
Campbell Barton
3957efdd38 fix for out-of-bounds checks for fcurve modifier and poselib, also check for NULL members of avi structure (since they are checked for NULL later.) 2012-09-14 06:15:46 +00:00
Campbell Barton
f6c7a69565 code cleanup: correct misleading use of LABEL button type. 2012-09-14 05:44:47 +00:00
Campbell Barton
e74701fbfc node transform was using PET mode (drawing a circle - but it did nothing), disable PET for nodes. 2012-09-14 01:28:26 +00:00
Campbell Barton
883117077b fix for 2 crashes freeing masks
- freeing a mask from RNA BKE_libblock_free() twice on the mask.
- loading a new blend file would only free the mask and not unlink it from nodes - it would access freed memory.
2012-09-14 01:15:08 +00:00
Dalai Felinto
622ac250f9 bge cleanup caught by accident while going over the code, it seems someone forgot to use rect_height everywhere (no functional change) 2012-09-13 23:39:09 +00:00
Brecht Van Lommel
888c4fd253 Fix #32547: unwrap on default cube got broken in recent commit. 2012-09-13 13:29:10 +00:00
Sergey Sharybin
c3b808721b Sequencer: add missed cache invalidation
Invalidation was missed for:

- Strip (Un)Muting
- Changing speed effect
- Strip translating
2012-09-13 10:51:18 +00:00
Sergey Sharybin
81d22a0e6b Sequencer: fix invalid update when translating strip which is behind semi-transparent strip 2012-09-13 10:51:13 +00:00
Campbell Barton
05755d307a fix [#31946] Masking doesn't respect pixel ratio 2012-09-13 05:29:38 +00:00
Campbell Barton
c5310521f8 fix for drawing non 1:1 aspect masks, transform and selection still need support. 2012-09-13 02:28:48 +00:00