Commit Graph

47594 Commits

Author SHA1 Message Date
dfc4de036e Meshdeform modifier: Use threaded evaluation
This commit switches meshdeform modifier to use threads to evaluate
the vertices positions using the central task scheduler.

SO now we've got an utility function to help splitting the for loop
into tasks using BLI_task module which is pretty straightforward to
use: it gets range (which is an integer lower and higher bounds) and
the function and userdata to be invoked for each of the iterations.

The only weak point for now is the passing the data to the callback,
this isn't so trivial to improve in pure C.

Reviewers: campbellbarton

Differential Revision: https://developer.blender.org/D838
2014-10-22 12:20:41 +02:00
74f40a5217 OSX: fix T42325 by not letting .vob handled by qt, avoids a doublefree 2014-10-22 12:00:07 +02:00
86dbc9dd9a Cleanup: avoid loop-in-loop when mirror isn't used
Also name 'children' is normally used for a list
2014-10-22 11:54:27 +02:00
769c0bee9f Fix T42334: x-mirror fails in armature with a partially mirrored chain.
When resetting edit bones on cancel, they also have to reset connected
parent and child bone tips and heads respectively, since these can be
modified during the transform.
2014-10-22 11:11:52 +02:00
33f388d7bf Cleanup: style 2014-10-21 20:14:26 +02:00
21836250c0 Fix T42260: By repeatedly joining meshes, you could end up with thousands of UVLayers
This is only an indirect fix, in fact: this commit adds a public API to check
the maximum number of a given layer type (`CustomData_layertype_layers_max()`),
and uses it to forbid too much layer creation in `CustomData_merge()`.

This only affects UVs/VCol data though, but merge behavior in itself is not a bug
actually, how user managed to get thousands of different UV layer names remain
rather mysterious...
2014-10-21 17:06:42 +02:00
b770964558 Fix T42278: Grease Pencil in Movie Clip Editor can not be erased in Track > Cursor mode
Eraser was not aware of possible transform matrix for the strokes.
2014-10-21 16:10:26 +02:00
9ce8dfaf6a Fix T42324: Curve deform modifier from mesh edge doesnt work properly
Curve parent requires valid path to exist for curve. If the path is disabled in
the curve settings, displist evaluation will check the dependency graph whether
the path is needed for parenting.

The issue was that changing relations in the scene chagned need of the curve path
but nothing tagged the curve to update it's path.

For now use direct call of DAG_id_tag_update from set_parent(). In the bright
future we might detect such a need in flush automatically in the depsgraph.
2014-10-21 19:16:29 +06:00
64dc1fd408 Simplify GLSL in bump mapping, use gl_NormalMatrix where appropriate.
tangents are directions and should be transformed like directions.
2014-10-21 15:00:29 +02:00
bae0f904ee Fix T42257: Curve vertex parent not working with animation
Vertex parent was using original non-modified nurbs list, simply because
it didn't have something else to operate with.

Now we've got deformed by pre-tessellation modifiers nurbs in the curve
cache which might be used y the vertex parent.
2014-10-21 14:44:08 +02:00
282315d991 ListBase: use BLI_listbase_ for new api calls 2014-10-21 14:06:16 +02:00
00ff9da2ee ShapeKeys: rework 'move skey' code, and add options to move to first/last position.
Main moving logic is moved to new `BKE_keyblock_move()`, which makes it available from anywhere.
In addition, move code was reworked so that it only loops once on whole keyblocks list,
and it accepts arbitrary org and dest indices, not only neighbor ones.

Partly based on work by revzin (Grigory Revzin) in his soc-2014-shapekey GSoC branch, thanks!
2014-10-21 12:07:24 +02:00
be4b2e42c6 BLI_listbase: add BLI_swaplinks which swaps given links' positions in given list.
Can be much simpler and quicker than using remlink/insert functions.
2014-10-21 12:07:24 +02:00
62ceada48f UI Icons: add 'triangle-bar' left/right/up/down icons. 2014-10-21 12:07:23 +02:00
40938c3b4b Fix sequencer clipboard with meta's containing ID references 2014-10-21 11:36:11 +02:00
2e7d72202f Fix sequencer duplicate with only handle selected 2014-10-21 11:13:32 +02:00
80b44133fc Fix T42326 trim operator not cancelled by the escape key. 2014-10-21 11:03:59 +02:00
abb266973d Fix T42311, too many paint slots added.
Don't allow the add paint slot operator to redo. Also guard better against
excessive slot addition
2014-10-20 20:14:44 +02:00
50cb62a3a0 Trim tool:
Effects strips in metastrips could be erratic.
2014-10-20 18:51:46 +02:00
3ef4b3e35c Better fix for previous trim fix. 2014-10-20 18:29:33 +02:00
6bd53bb707 Fix T42313: Ruler always measures 0.0
Passing 'ar' to snapObjectsRayEx would apply a ray-offset.
2014-10-20 17:42:49 +02:00
5362995fde Fix trim tools metastrip borders not getting updated correctly. 2014-10-20 17:37:13 +02:00
f95241eb3e Merge trim tool from terrible_consequencer
The trim tool (T key) allows users to change the position of the
contents of a strip without moving the strip itself.
2014-10-20 15:40:18 +02:00
5223214199 Optimization for mesh deform: use BLI_INLINE specifiers
This helps compiler to do detect stuff which might be inlined,
gives around 30% speedup on my laptop with test files from ZanQdo.
2014-10-20 17:04:46 +06:00
d968a1ebb0 Fix T42189
Own mistake - not copying enough data.
2014-10-20 12:35:49 +02:00
3138d39047 Fix T42264: Negative scale & clipped-select fails
Thanks to mont29 for finding the cause.
2014-10-20 11:17:36 +02:00
308c4fc234 Fix T42303 Icons lost after loading window
The issue here is that if no matching winid is found, we destroy all
windows and their context with them. This will also delete the OpenGL
textures associated with the initial context, thus we lose the icons.
This patch makes sure a window is always kept for later so the initial
context does not get lost.

Thanks to Campbell and Ton for the discussion on the issue.
2014-10-19 20:50:57 +02:00
984836781e Fix typo in calculateCenterMedian that could give computed median point wrong values.
From soc-2014-shapekey branch, with minor edits by mont29 (Bastien Montagne).
2014-10-19 20:15:03 +02:00
4dd5b635e8 Revert "Freestyle: Built-in SVG exporter."
This reverts commit 61a330baca.

This completes reverting D785

This feature is to be reworked into an addon.
2014-10-19 19:10:32 +02:00
923423e4cd Reports: include parent library in readfile report
Helps troubleshooting indirect links.
2014-10-19 12:49:01 +02:00
3a961d66ef Fix T42281, crash in subsurf with texture painting. 2014-10-18 13:18:04 +02:00
61a330baca Freestyle: Built-in SVG exporter.
Features:
* Both still image and animation rendering, as well as polygon
  fills are supported.
* The exporter creates a new SVG layer for every Freestyle line
  set. The different layers are correctly sorted.
* SVG paths use data from line styles, so the base color of a
  line style becomes the color of paths, idem for dashes and
  stroke thickness.
* Strokes can be split at invisible parts.  This functionality is
  useful when exporting for instance dashed lines or line styles
  with a Blue Print shader
* The exporter can be used not only in the Parameter Editor mode,
  but also from within style modules written for the Python
  Scripting mode.

Acknowledgements:
The author would like to thank Francesco Fantoni and Jarno
Leppänen for their [[ https://github.com/hvfrancesco/freestylesvg | Freestyle SVG exporter ]].

Differential revision: https://developer.blender.org/D785

Author: flokkievids (Folkert de Vries)

Reviewed by: kjym3 (Tamito Kajiyama)
2014-10-18 18:35:29 +09:00
4b42c4bce4 OSX/PLAYER/cmake: fix player install python bundling, overlloked player has its own PLAYER_TARGETDIR_VER 2014-10-17 22:16:59 +02:00
d74e3c44cc Fix for align bone to cursor (missing normalize) 2014-10-17 22:11:41 +02:00
ded2d8a777 Fix for pose bones not restoring selection index properly 2014-10-17 16:48:42 +02:00
04fab84fd1 More fixes:
* Fill brush did not do proper srgb conversion for byte images (reported
by Sebastian Koenig, thanks!)
* Color sampling for palettes did not refresh the toolbar.
2014-10-17 14:25:50 +02:00
33bff4caef Fix issue reported by Sebastian Koenig on irc, Clone brush would paint
trash with float images.

Issue is uninitialized alpha in the clone brush + a clamping issue for
float images. There's still some 'swimming' and brightness issue here
but I have to do work for the weekly, will investigate further later.
2014-10-17 14:11:13 +02:00
c246499283 Fix typo 2014-10-17 12:37:50 +02:00
49d49d2c84 Small fix for own commit, added new theme color defines but forgot to
actually use them, thanks to Kevin Dietrich for noticing.
2014-10-17 10:20:10 +02:00
13e9c44ce5 UI: disable area emboss when it's maximized 2014-10-17 00:12:31 +02:00
887da1345c Sequencer: jump now takes end-points into account
Useful because it's effectively the start-point for any strip which is obscured.
2014-10-16 23:59:59 +02:00
25d6479ffb Correct recent commit 2014-10-16 23:22:48 +02:00
c6c7b9e0f7 Cleanup: use SQUARED macro 2014-10-16 23:22:48 +02:00
8f1e015d75 Revert "Minor typo".
This was supposed to be an experimental commit, shouldn't be in master at all, sorry for that

This reverts commit 0750e4c4c7.
2014-10-16 20:33:19 +02:00
ebad51fd0b Fix bad typo in undo code that invalidated all image caches on undo. 2014-10-16 20:07:44 +02:00
0750e4c4c7 Minor typo 2014-10-16 19:08:56 +02:00
d30abdf3ec Fix T42258: Drivers: dimensions.x is always invalid, but dimensions[0] works
'PROP_XYZ_LENGTH' subtype was missing from list of valid '.x/y/z/w' ones.
2014-10-16 16:30:52 +02:00
61d1477415 Fix T42256: Translation operator moves Child-Of constrained objects in wrong space when only using parent's rotation and parent is rotated.
Just do not use crazyspace correction with childof constraints in this case.

Note this is only a very partial fix (partial use of parent loc on some axes
is still broken in transform), a real fix would probably require a full rewrite
of constraints handling in transform code (a mere static correction matrix
just cannot work in all possible cases, we'd need a full dynamic correction system here).
Anyway, transform code as a whole is horrible. :/
2014-10-16 15:48:52 +02:00
507712db3f Fix T42222
Avoid using roundf function, since it's oly defined in C99
2014-10-16 12:04:41 +02:00
59b4ea5c69 Sequencer: draw metastrip range while editing 2014-10-16 12:02:12 +02:00