Commit Graph

10602 Commits

Author SHA1 Message Date
e097c987a8 Maintenance: Start of 2.71 release cycle, BCon1, Alpha. 2014-03-07 13:43:59 +01:00
c05896eb35 Fix for own commit: particle rng arrays should be declared extern in the
header.
2014-03-07 13:18:15 +01:00
08444518e6 Removing ParticleSystem->frand arrays to avoid memory corruption issues
in threaded depgraph updates and effector list construction.

Gathering effectors during depgraph updates will call the
psys_check_enabled function. This in turn contained a DNA alloc call
for the psys->frand RNG arrays, which is really bad because data must be
immutable during these effector constructions.

To avoid such allocs the frand array is now global for all particle
systems. To avoid correlation of pseudo-random numbers the psys->seed
value is complemented with random offset and multiplier for the actual
float array. This is not ideal, but work sufficiently well (given that
random numbers were already really limited and show repetition quite
easily for particle counts > PSYS_FRAND_COUNT).
2014-03-07 11:20:45 +01:00
b839fb9bb7 Fix T38985: Setting endpoint_u property while creating spline in Python gives strange behavior 2014-03-07 14:05:38 +06:00
03af4cbf91 Code cleanup: style 2014-03-07 13:28:39 +11:00
3d2b530315 Hiding plane tracks was never implemented 2014-03-06 20:07:40 +06:00
4ce7d5cb79 Fixes for proxies color space
Basically proxy colorspace didn't work well enough.

It is still a bit weird and mainly:

- Proxies for image sequences are built in the image color space.

- Proxies for movies are built in the movie color space.

This could be unified but would need some work in proxy build
to make it not just pipe frames from one FFmpeg context to
another but also apply OCIO on it.
2014-03-06 17:32:45 +06:00
f56a74566a Bump version to Blender2.70rc and new splash
Splash concept art & paint-over: David Revoy. 3D artwork by Mathieu Auvray.
2014-03-06 04:40:49 +11:00
3aedb3aed7 Fix for invalid custom data checks in armature and lattice functions.
Testing for custom data availability with getVertData and index 0 fails
on assert for empty meshes (the index must be in valid range). Better
use getVertDataArray which has no requirement for specific index.
2014-03-05 15:13:50 +01:00
e49e78e414 Fix for negative gamma correction rounding to int 2014-03-05 22:41:44 +11:00
9ecf73f703 Follow up to the offset scale fix for texture painting: texture mask had
the same issue.
2014-03-04 20:36:03 +02:00
53b03eff96 Fix T36496: unwanted behavior with NLA strip blend mode Replace.
If you have two overlapping NLA strips it automatically blends between them.
However it was also blending between the first strip and the rest pose
(e.g. 0,0,0 for locations and 1,1,1 for scale).

This is ok if the blend mode is Add or Multiply since then you are adding onto
the rest pose, but for Replace you want to be able to mix between two poses
and not take the rest pose into account at all.

What this does is that to not do any blending for the first strip if it has
blend mode Replace. If someone wants the old behavior (from bugfix commit
27d792fa9c) they can still make an action with the rest pose and use that
as the first strip.
2014-03-03 16:34:10 +01:00
3c3c2cd53c Fix issue with texture painting: Tex slot scale was being applied twice. 2014-03-02 19:40:39 +02:00
a89ef76136 Fix for own mistake: arc diff swallowed a commit somehow, breaking
compilation.
2014-03-02 17:04:24 +01:00
fd553c5b7b Fix T37334: Better "internal links" function for muting and node disconnect.
Implements a more flexible internal connect function for standard nodes
(compositor, shader, texture). Allow feasible datatype connections by
priority.

The priorities for common datatypes in compositor, shader and texture
nodes are encoded in a simple function. Certain impossible connections
(e.g. color -> cycles shader) are excluded by giving them -1 priority.

Priority overrides link status: If a higher priority input can be found,
this will be used regardless of link status. Link status only comes into
play for inputs with same priority.

Reviewers: brecht

CC: sebastian_k

Differential Revision: https://developer.blender.org/D356
2014-03-02 16:04:25 +01:00
f01d19431d Fix T38873: Crashing on undo of ocean modifier.
Issue of this bug is that most part of fftw is not thread safe, only compute-intensive fftw_execute & co are.

Since smoke was affected by this issue as well, a global fftw mutex was added to BLI_threads.
Audaspace also uses fftw in one of its readers (AUD_BandPassReader.cpp),
but this is not an issue currently since this code is disabled in CMake/scons files.

There was another threading issue with smoke, we need to copy dm used by emit_from_derivedmesh(),
as it is modified by this func.

Reviewers: sergey, brecht

Reviewed By: brecht

CC: brecht

Differential Revision: https://developer.blender.org/D374
2014-03-01 21:05:50 +01:00
176f1aad3d Fix for using non camera objects as a camera having zero area view-frame 2014-03-01 21:41:07 +11:00
9737717234 Fix for some unlikely memory leaks, remove redundant checks 2014-03-01 20:14:20 +11:00
13ea967cce Code cleanup: correct abs use and quiet warnings 2014-03-01 14:26:18 +11:00
315d85faa1 Fix for baked FCurve subframe interpolation (bad abs use) 2014-03-01 14:12:56 +11:00
ca4dde48f3 Fix for sequencer invalid rounding, double wipe at 0 angle 2014-03-01 13:39:36 +11:00
f29dadc5ea Code cleanup: comment unused code in calchandleNurb_intern
Also remove outdated comments.
2014-03-01 12:58:52 +11:00
ea269c21ea Code cleanup: move edit-derivedmesh free to BKE_editmesh_free_derivedmesh 2014-02-28 20:12:45 +11:00
ba08031783 Fix T38817: FCurve autoclamp error
Animating large values with auto handles didn't work well,
(large variations on the Y axis would shrink handles).
2014-02-28 12:11:09 +11:00
18fde352bf Fix compile error when compiling without python. 2014-02-27 21:16:01 +01:00
d09f2ed322 Fix T38864: Crash with curves and follow path 2014-02-27 19:33:23 +11:00
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
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
081a3412a9 Paint API: add BKE_paint_select_elem_test: to check on paint selection 2014-02-26 16:00:54 +11:00
8cfb5e91ea Further work for fix T38804: unnecessary empty space in the modifier UI. 2014-02-25 21:49:38 +01:00
21cb628399 Assert for invalid customdata allocs 2014-02-25 23:13:17 +11:00
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
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
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
59472df8d6 Image: color grid - correct abs() use with ints 2014-02-24 22:26:47 +11:00
e72775e34a Fix T38795: Mesh Analysis overhang faces show gray 2014-02-24 19:55:04 +11:00
b7fa08f88a Code cleanup: style 2014-02-22 11:14:15 +11:00
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
e87c462890 Fix T38736: ShrinkWrap modifier doesn't work after Subsurf 2014-02-21 18:10:44 +11:00
47c55c5d43 Fix for reading past allocated bounds when calculating paths 2014-02-20 20:28:30 +11:00
572a199a24 Fix for off-by-one error switching nurbs direction 2014-02-20 20:11:03 +11:00
e7f3424dca Fix T38723: Crash on loading with NULL sequence stripdata 2014-02-20 12:40:28 +11:00
eb7485389b Use tabs for image editor.
For initial discussion see T38371

This commit organized panels for image editor to new tab categories dependent
on the image editor mode:

View Mode:
Tools - contains UV tools (currently only transform and UV Sculpting)
Scopes - contains scopes
Grease Pencil - contains Grease Pencil operators

Paint Mode:
Tools - contains brush options
Scopes - as above
Grease Pencil - as above

Mask Mode
Mask - contains mask tools
Scopes - as above
Grease Pencil - as above

Grease Pencil panel/tab now includes operators, not view options which have been
moved to the UI region on the right.
To make this work better, image editor toolbar now is of type TOOLS instead
of PREVIEW as was the case previously. A nice version patch makes sure all
works predictably, but opening newer files with older blender executables
could backfire.

This commit does not address which UV Tools will be included in the
Tools tab for the view mode, but does include some basic tools (transform)
and provides a class to inherit from to avoid conflicts with UV Sculpting.

Reviewers: brecht, dingto, sergey

Differential Revision: https://developer.blender.org/D315
2014-02-19 17:22:01 +02:00
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
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
d76bcf98a3 MSVC: improve warnings for scons and cmake
Some int/float conversion warnings were disabled by buildsystems but
re-enabled by BLI_winstuff.h, the warnigns relate to conversions not
considered issues on other systems so better just quiet them.
2014-02-19 17:37:02 +11:00
c9233bfd82 Code cleanup: style 2014-02-19 08:02:59 +11:00
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
2175302d3b Possible fix for T38644: H.264 with PNG RGBA encoding crashes 2014-02-18 12:37:21 +06:00
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