Commit Graph

11497 Commits

Author SHA1 Message Date
df107939c9 rename BLI_getQuotedStr --> BLI_str_quoted_substrN to make it more clear its doing an allocation. 2012-07-09 22:16:50 +00:00
c185635ed0 svn merge ^/trunk/blender -r48749:48754 2012-07-09 12:57:04 +00:00
4e6a54e60b Tomato: fix for mask cache
That used to be a threading issue when two different operations
were allowed to access the same mask's cache. Now use lock in
BKE_mask_rasterize_layers so that should work fine now.
2012-07-09 11:45:07 +00:00
98969c64ff code cleanup: move sequencer timecode into its own func. 2012-07-09 10:55:41 +00:00
ffd9947001 Merging r48740 through r48749 from trunk into soc-2011-tomato 2012-07-09 10:33:09 +00:00
0966a3b191 Fixed issues updating texture buffer used for clip editor frame display
when specific circumstances are met.

Mainly issue was caused by checking ImBuf pointers, which used to fail
when some post-processing flags are changed. This was caused by the
fact that freeing old ImBuf and allocating new one could lead to new
ImBuf have the same pointer as previous one, which confuses cache.
2012-07-09 10:26:01 +00:00
cb72095090 svn merge ^/trunk/blender -r48729:48739 2012-07-08 18:21:51 +00:00
2580575658 correct another case of nonnull (all should be correct now), and comment about color conversion. 2012-07-08 17:51:28 +00:00
0c7b56cf39 correct use of nonull attribute 2012-07-08 17:08:27 +00:00
1bca7fe492 svn merge ^/trunk/blender -r48691:48729 2012-07-08 15:55:58 +00:00
b91bc4f037 use gcc attrubutes to warn on unused return values and arguments which shouldnt be NULL.
also remove IDP_AppendArray's return value which wasnt the new item in the array (which is odd/misleading), but wasnt used anywhere either.
2012-07-08 06:00:27 +00:00
cfb7aee017 style cleanup 2012-07-07 22:51:57 +00:00
84bf3e48c0 style cleanup: use c style comments in C code 2012-07-06 23:56:59 +00:00
b7b5029814 Merged changes in the trunk up to revision 48695. 2012-07-06 23:46:48 +00:00
3a0593cc3d code cleanup: dont use function calls like dot_v3v3, pow and sqrt within macros which results in calling the function multiple times needlessly.
also added some comments.
2012-07-06 22:48:28 +00:00
eab80a40df svn merge ^/trunk/blender -r48681:48691 2012-07-06 20:28:35 +00:00
Chris Want
16b165eed5 Fix for bug 32017.
There was some bad recursion introduced recently that caused crashes
when a Material node is the same material as the material itself (e.g.,
if Material.001 has a node with Material.001).

This commit attempt to correct this by keeping track of the material
at the root of the node tree, and doesn't recurse further if it
encounters it again within the nodetree.

Joshua, please review!
2012-07-06 16:55:35 +00:00
f5fe447e00 svn merge ^/trunk/blender -r48638:48658 2012-07-05 18:04:17 +00:00
e5cbfb5460 fix for crash in point comparison when one of the arrays is NULL 2012-07-05 17:08:06 +00:00
b0598a203c Cosmetic updates to mesh validate messages. 2012-07-05 13:02:42 +00:00
b5135a8bdf fix for making local loosing references to node groups.
node->id was left as an indirect link which wont get saved with the file.
2012-07-05 12:50:50 +00:00
3c367f924a svn merge ^/trunk/blender -r48604:48638 2012-07-05 11:40:48 +00:00
83758c4154 Color management: refactor of cache to deal better with movie clip cache
There were some crashes discovered in some circumstances of using
color management within the clip editor which ended up some refactoring
of color management cache.

Switch from global movie cache instance to per-image buffer instances

This only means keys for color managed buffers could be much simpier
and that look up would happen much faster in there're lots of frames
cached. Memory limiter stuff is still global for all color management
and in fact it's also shared with movie clip cache .

This allowed to get rid of original image buffer stored in cache
key and allowed to easily remove all display buffers when source
image buffer is being freed. This was main culptrit leading to
crashes.

Additional changes:

- Add option to make moviecache verbose. If DEBUG_MESSAGES is
  defined in moviecache.c detailed logs would be printed to the
  console.

- Movie caches are now named which helps reading debug messages.

- Improved a bit behavior of cache element removing when buffer
  overflows on adding new display buffer and there're frames from
  movie clip.
2012-07-05 09:41:00 +00:00
21bf13989f code cleanup: remove Python.h include from blenkernel. 2012-07-04 20:13:39 +00:00
48d0d32f73 svn merge ^/trunk/blender -r48585:48604 2012-07-04 17:55:30 +00:00
958cf139f6 Bugfix Smoke / DynamicPaint: Missing update call from depsgraph was missing when force fields were used. 2012-07-04 16:55:17 +00:00
4149ea5f50 Last spell checking (for now).
Only mysterious courant from bpy.types.ParticleSettings.courant_target reamins...
2012-07-04 15:52:07 +00:00
558721ab59 More spell checking. 2012-07-04 15:04:38 +00:00
715edceb42 spelling cleanup: metre -> er 2012-07-04 12:56:58 +00:00
ebdd2201ff Merging r48575 through r48576 from trunk into soc-2011-tomato 2012-07-04 07:37:21 +00:00
592196cb70 Revert the DNA pdef_stickness -> pdef_stickiness part of r48556.
Forgot DNA needed stable names... :/ Correct spelling would involve keeping the old one for load code anyway, so better live with incorrect spelling here.
2012-07-04 07:35:54 +00:00
17d7a9c3d9 Merging r48545 through r48574 from trunk into soc-2011-tomato 2012-07-04 07:33:34 +00:00
facc2429ab Mask node: create a copy of layers to be rasterized in initExecution
This creates a list of splines to be rasterized in nitExecution which
is being called from main thread. This should resolve possible threading
issues discovered in tomato branch.
2012-07-04 07:10:23 +00:00
468ef74ed7 More spell and typo fixes (mostly visualise->visualize, grey->gray, normalise->normalize). 2012-07-03 19:09:07 +00:00
37dc4006c7 First load of spell and typo fixes (mostly UI messages, but also one or two pieces of code using mis-spelled names). 2012-07-03 17:20:21 +00:00
89af953a65 Tomato: correction to mask cache so parenting should work fine now 2012-07-03 15:46:23 +00:00
62541003bf Merging r48538 through r48544 from trunk into soc-2011-tomato 2012-07-03 15:14:14 +00:00
3f91437329 Corrections to default values for view settings 2012-07-03 14:51:54 +00:00
d51297421d Tomato: hack to cache result of rasterization
It shall be removed as soon as tile-based rasterization is here,
but to remove current stoppers should be fine.
2012-07-03 14:30:55 +00:00
2e3c474b2d image sequence - apply cyclic option AFTER the image offset,
there was no way to properly loop on a sequence of images that didnt start frame 1.
2012-07-03 14:25:06 +00:00
1fb0ecb9bb svn merge ^/trunk/blender -r48527:48537 2012-07-03 14:05:18 +00:00
42aaa47e9b dont display image sequences outside the frame range in the 3D viewport. 2012-07-03 14:04:39 +00:00
259e78997a svn merge ^/trunk/blender -r48489:48527 2012-07-03 11:03:39 +00:00
5c70c29b9c Tomato: improved cache management for movie clips
Replace pseudo-LRU approach of determining which buffer
to remove when running out of space allowed for cache
with approach which would remove the frame which is most
far away from newly added frame.

This is still a bit tricky because it's impossible to
distinguish which frame to delete in situation of:

    CCCC...CC
        ^

it's either user wants to extend left segment of cached
frames and buffers from right segment should be removed
or he wants to join this two segments and in that case
buffers from right segment should be removed.

Would need a bit more investigation which situation
is more common in general usecase.
2012-07-03 10:56:33 +00:00
a0a4c54710 Check for nullpointers.
The ID of group nodes are not always filled.
2012-07-03 08:54:07 +00:00
55027b8232 fix for memory leak in BKE_mesh_ensure_navmesh(), it would add 2 navmesh layers, once referencing the other. 2012-07-03 08:16:14 +00:00
6a2a424c40 Bugfix: Fix crashes with empty material slots 2012-07-03 05:46:44 +00:00
d58cb1beaa Followup for r.48515
* Removed material driver creation hack. However, the textures one remains, as
texture eval isn't ready yet
* Shuffled some code
2012-07-03 05:30:19 +00:00
c960d1692f Bugfix [#31834] Cycles materials cannot be manipulated using drivers
Until now, there was never any code for making drivers on materials get
recalculated when their dependencies were changed. However, since changing
material colors with drivers is something that is quite common, a workaround was
introduced to ensure that materials could still be driven (albeit with the
relevant drivers rooted at object level). This worked well enough so far with
traditional materials - though it was sometimes clunky and confusing for some
users - and would have been ok to tide us over until the depsgraph refactor.

The introduction of Cycles changed this, as it has in many other ways. Now that
people use Cycles to render, they'll need to drive the material colors through
the nested nodetree (and other things nested deeply within that). However, this
is much more difficult to generate hacks to create the relevant paths needed to
work around the problem.

== This Commit... ==
* Adds a recursive driver calculation step to the BKE_object_handle_update()
(which gets called whenever the depsgraph has finished tagging object datablocks
for updates), which goes through calculating the drivers attached to the object
(and the materials/nodetrees attached to that). This case gets handled everytime
the object is tagged as needing updates to its "data" (OB_RECALC_DATA)

* When building the depsgraph, every dependency that the drivers there have are
treated as if they were attached to object.data instead. This should trick the
depsgraph into tagging OB_RECALC_DATA to force recalculation of drivers, at the
expense perhaps of modifiers getting recalculated again.

== Todo ==
* The old workarounds noted are still in place (will be commented out in the
next commit). This fix renders at least the material case redundant, although
the textures case still needs a bit more work.

* Check on whether similar hacks can be done for other datablock combinations

* So far, only simple test cases have been tested. There is probably some
performance penalty for heavy setups still (due to need to traverse down all
parts of material/node hierarchy to find things that need updates). If there
really is a problem here, we could try introducing some tags to limit this
traversal (which get added at depsgraph build time).  <--- USER TESTING
NEEDED!!!
2012-07-03 05:11:37 +00:00
f977da407b Bugfix [#31976] Bone Group Custom color set is not respected when creating an
Action

Custom color set colors were not getting copied over when creating new action
groups. Instead, a "default set" was initialised for use instead.
2012-07-03 01:15:03 +00:00