Commit Graph

12014 Commits

Author SHA1 Message Date
Brecht Van Lommel 18fde352bf Fix compile error when compiling without python. 2014-02-27 21:16:01 +01:00
Campbell Barton d09f2ed322 Fix T38864: Crash with curves and follow path 2014-02-27 19:33:23 +11:00
Campbell Barton 4622fc418e Fix T38863: FCurve auto-clamp allows handle to move past X bounds
F-Curves with large Y axis had strange behavior where the handles could
stretch out on the X axis rather then clamping as they do at smaller sizes.
2014-02-27 17:15:49 +11:00
Campbell Barton 55fe91abf3 Code cleanup: curves calculation was using offsets confusingly
also avoid calculating handle length when align isn't used.
2014-02-27 17:03:35 +11:00
Campbell Barton 081a3412a9 Paint API: add BKE_paint_select_elem_test: to check on paint selection 2014-02-26 16:00:54 +11:00
Brecht Van Lommel 8cfb5e91ea Further work for fix T38804: unnecessary empty space in the modifier UI. 2014-02-25 21:49:38 +01:00
Campbell Barton 21cb628399 Assert for invalid customdata allocs 2014-02-25 23:13:17 +11:00
Sergey Sharybin f2309ba579 Fix T38824: curve which is constrained on a hidden layer causes cycles crash
Issue was caused by cycles setting scene frame which will update scene for
all the layers (not just visible ones) which confuses depsgraph making
objects which are needed as dependency are not really evaluated.

Made it so setting frame via scene.frame_set() which check whether update
need to be flushed to an invisible objects and do this if so.

Not ideal solution but seems to be safest at this point.
2014-02-25 15:52:56 +06:00
Sergey Sharybin d9637fb3be Fix T38745: Curve parent crash when rendering animation
Issue was caused by curve orco calculation for rendering being freed
curve path and not calculating it back.

This left depsgraph in a state that it believed all the object data
is up to date but in fact some parts of data was freed by convert
blender.

Now made it so path is not being freed by render thread. This is
rather a workaround actually because ideally render thread need
to use copy-on-write here or at least use local cache here. But
current logic should be closer to what was happening in previous
release.
2014-02-25 13:27:46 +06:00
Sergey Sharybin 1130c53cdb Fix T38755: Crash when having cyclic dependency and curve deform
Issue was caused by undefined object update order and in some
cases NULL pointer will be de-referenced.

Added on-demand curve path calculation, just the same creepy call
of BKE_displist_make_curveTypes(). This violates DAG and might
end up in a difficult to troubleshoot race condition if there'll
be some issues with how dependencies are calculated in DAG, but
this is the easiest and safest way to solve the bug at this stage,
2014-02-24 19:15:52 +06:00
Campbell Barton 59472df8d6 Image: color grid - correct abs() use with ints 2014-02-24 22:26:47 +11:00
Campbell Barton e72775e34a Fix T38795: Mesh Analysis overhang faces show gray 2014-02-24 19:55:04 +11:00
Campbell Barton b7fa08f88a Code cleanup: style 2014-02-22 11:14:15 +11:00
Sergey Sharybin b3bc9e4f77 Fix T38598: RGBA images don't blend well in VSE with Cross Effect Strip
The issue was caused by the fact that sequencer used to cross-over effect
result with strips used for this effect, which is really stupid.

Now made it so strips which are used for effect inputs are not in the
render stack to be sure they would only be used by effect itself and
wouldn't be blended in any other way.
2014-02-21 14:03:33 +06:00
Campbell Barton e87c462890 Fix T38736: ShrinkWrap modifier doesn't work after Subsurf 2014-02-21 18:10:44 +11:00
Campbell Barton 47c55c5d43 Fix for reading past allocated bounds when calculating paths 2014-02-20 20:28:30 +11:00
Campbell Barton 572a199a24 Fix for off-by-one error switching nurbs direction 2014-02-20 20:11:03 +11:00
Campbell Barton e7f3424dca Fix T38723: Crash on loading with NULL sequence stripdata 2014-02-20 12:40:28 +11:00
Sergey Sharybin f6a7e5ece1 Change default track to 15px pattern and 71px search
After recent seed improvements it makes tracking more robust
without speed loss.
2014-02-19 18:50:24 +06:00
Sergey Sharybin 57b62881f4 Added track weight to presets
Useful for cases when you need to create bunch of witness tracks.
2014-02-19 18:43:36 +06:00
Campbell Barton c9233bfd82 Code cleanup: style 2014-02-19 08:02:59 +11:00
Sergey Sharybin f5ae5698d0 Fix T38691: Curve object bevel not working in group instance
It is possible that objects from dupli-groups depends on objects which are
not in the dupli-group. We do need this objects to be evaluated as well on
visible changes, so all dependencies for objects from the dupli-group are
met. Unfortunately, we don't have parent relations on this state, so we're
to use DFS over the whole DAG to gather such dependencies.

This is probably not so bad since visible update is called really rarely.

Reviewers: brecht

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D326
2014-02-18 23:12:16 +06:00
Sergey Sharybin 2175302d3b Possible fix for T38644: H.264 with PNG RGBA encoding crashes 2014-02-18 12:37:21 +06:00
Brecht Van Lommel 1a4b718582 Fix crash on file load with linked groups and curve bevel.
This isn't a proper fix, curve_cache should not be NULL, but it makes it
possible to open the file at least.
2014-02-17 22:02:44 +01:00
Sergey Sharybin 209a68af39 Fix T38658: H.264 with "Lossless Output" enabled gives lossy output
Issue was caused by the change in FFmpeg options: some of them were
renamed, some moved to another class.

Made some tweaks to how options are passed to the FFmpeg which now
seems to be the same as ffmpeg.c.
2014-02-17 20:53:15 +06:00
Sergey Sharybin a61e3b9a9e Fix T38422: Error writing AAC frame when using FFmpeg compiled with vo_aacenc
Issue was caused by missing GLOBALHEADER flag set for audio stream.

Also made it so frame is getting filled with default, that's what
happening in ffmpeg.c.
2014-02-17 18:10:38 +06:00
Campbell Barton 1af726a82e Mask: fix for intel openmp which doesn't support casts in for loops 2014-02-17 21:37:56 +11:00
Campbell Barton fcaf144a2a Mask: enable overlap detection by default, more compact buttons 2014-02-17 20:00:11 +11:00
Sergey Sharybin f9b51f0635 Clear +x flag from source file 2014-02-17 13:18:22 +06:00
Andrea Weikert 6c7f9f67fd Fix: compile error due to non-matching type and strict flags for MSVC9
This fixes a small compile error where MSVC9 complains about conversion from int to unsigned char.
2014-02-16 15:47:08 +01:00
Campbell Barton 78bd029bbe MSVC: add errors for BLI_strict_flags.h 2014-02-16 14:50:15 +11:00
Campbell Barton 56f6bc06d3 Fix T38638: modifiers on curves kept warnings 2014-02-15 17:25:56 +11:00
Campbell Barton 77a15aba38 IDProp API: change IDP_NewString so sizeof() can be passed in. 2014-02-15 12:31:58 +11:00
Campbell Barton 01d9bbaa5e Code cleanup: remove more string encoded menu functions 2014-02-15 11:37:33 +11:00
Brecht Van Lommel 42946c37c7 Fix T38606: C curve in the curve mapping compositing node not extrapolating correct.
The "premultiply" optimization here did not take the extrapolation into account.
2014-02-14 16:03:45 +01:00
Brecht Van Lommel 8439a165ff Fix T38504: cycles missing object in viewport with shape keys and shared mesh. 2014-02-14 14:54:00 +01:00
Lukas Tönne 30c9fe19a3 Fix for crash caused by effectors doing precalculation //during// DAG
updates.

This file crashes on loading with NULL pointer access to curve_cache:
{F77132}

The pdInitEffectors function was amalgamating the simple
collection of effector objects with an automatic precalculation for
curve guides and the like. This precalculation requires object data
that may not be available until the DAG has finished.

Since for DAG dependencies only the list of effectors is required,
added an argument to disable precalculation when collecting effectors.
2014-02-14 12:58:43 +01:00
Sergey Sharybin 54dd355cc8 Fix T38562: Wrong curve tilt after Switch Direction 2014-02-14 14:58:52 +06:00
Campbell Barton 5621e63d36 Code cleanup: duplicate headers 2014-02-14 10:55:38 +11:00
Sergey Sharybin 910f4df45d Fix race condition between tracking thread and tracks map sync
This might have been a reason of bug T38281.
2014-02-13 18:31:02 +06:00
Campbell Barton ae8327dbf3 Mask: add option to detect self intersections 2014-02-13 19:12:28 +11:00
Campbell Barton 108ad34429 Mask: option not to treat overlapping curves as holes 2014-02-13 11:48:46 +11:00
Bastien Montagne 70905a6e02 Fix Editderivedmeshes vertices normals computation.
Those derived meshes (used in Edit mode) were using simple sum of neighbor poly normals to get vertex normals,
while everywhere else in Blender we use weighted sum of such poly normals.

Patch: D311

Reviewed and enhanced by Campbell, thanks!
2014-02-12 20:48:09 +01:00
Thomas Dinges 78e137efda Motion Tracking: Grammar fixes. 2014-02-12 15:32:26 +01:00
Shinsuke Irie 38e58612ef Revert own previous commit rBe2f9afbaabbd.
The "Cast Shadows" worked as expected, but it can cause problem in some cases.
For example, when using strand render, we need disabling only buffer shadows,
but the previous changes made that impossible. "Cast Shadows" should be added
as a newly created option.
2014-02-12 05:46:26 +09:00
Campbell Barton 0e97550fb3 Mesh Data: disable two-sided for new meshes (see: T37518) 2014-02-12 02:46:43 +11:00
Sergey Sharybin 0a50757a59 Fix null-pointer dereference in previous sequencer commit 2014-02-11 19:29:17 +06:00
Sergey Sharybin 23fe23f951 Fix T38557: VSE clips with Alpha Over against a transparent background fail to reflect opacity changes 2014-02-11 16:03:56 +06:00
Shinsuke Irie e2f9afbaab Blender Internal: Modify material property "Cast Buffer Shadows" to affect ray shadows also, and rename it to "Cast Shadows".
This allows us to make materials that don't cast ray shadows.
Turning off this property can reduce the rendering time slightly.

Note: RNA path is changed to "use_cast_shadows" as well. The older
path "use_cast_buffer_shadows" still can be used as its alias, but
it will be removed after updating some addons.

Reviewed By: brecht

Differential Revision: https://developer.blender.org/D272
2014-02-11 17:06:21 +09:00
Ursula kurdali 5cf987cff8 Patch T38282/D295: Add a time offset to the FCurve Noise Modifier
FCurve Noise Modifer now has an extra float property which offsets the noise in time.
This is useful for creating follow through in procedurally animated noise.

For example, if you've used a noise modifier on a parent bone to add additional movement,
a quick and easy way to add overlapping motion is to create copies of that modifier on
its children, and then offset the time those curves play at. See this in action at:
http://youtu.be/Ph6fk_z_k3k

Reviewed By: Joshua Leung
2014-02-10 16:21:12 +13:00