Blender Git Loki

Blenderin Git "master"-kehityshaaran kommitit.

Page: 565 / 5574

September 22, 2020, 08:33 (GMT)
Cleanup in style from previous commit.

Forgot that arc land also did the pus ot originh.
September 22, 2020, 08:30 (GMT)
Fix T80859: Thread safe pixeldata concersion from float to uchar and v.v.

I created a bugreport T80859 earlier.

The problem is in the file source/blender/editors/sculpt_paint/paint_image_proj.c (line numbers against commit d376aea61)

at the lines 5309 and 5320 the functions `IMB_rect_from_float(...)` and `IMB_float_from_rect(...)` are called from threaded code on a shared ibuf.
However, ps->reproject_ibuf is shared between threads, so this is not thread-safe.
This is a race condition and leads to wrong output when projecting float data onto a uchar texture or vice versa on a multithreaded system.
The checks on line 5308 and 5319 are already a race condition.

I created this patch which fixes the problem , but I'm not sure if I'm overlooking something.
This makes sure reproject_ibuf contains the correct formats *before* the threadpool is started.

I replaced the original location of the conversions with BLI_asserts(). That may be overkill?

Reviewed By: #sculpt_paint_texture, mont29

Maniphest Tasks: T80859

Differential Revision: https://developer.blender.org/D8936
September 22, 2020, 08:22 (GMT)
Fix T81013: Weight Paint Overlay XRay fails with clipping

When introduced in rB1ca1744c29e2, the Weight Paint Overlay XRay's
corresponding depth pass was not considering clipping planes.

Maniphest Tasks: T81013

Differential Revision: https://developer.blender.org/D8970
September 22, 2020, 08:08 (GMT)
Cleanup: reduce variable scopes
September 22, 2020, 07:48 (GMT)
Fix T80996: Weight Proximity modifier: crash going to editmode on a
target in certain situations

Regression from rBdeaff945d0b96.

mesh_ensure_looptri_data would overflow.

Crash would only happen if a Data Transfer modifier (transferring
UVs) follows, so exact reason for this is not yet entirely clear. Also
there are edit-mode versions of the following BVH lookup functions so it
could be avoided (since this is a expensive operation), marking as TODO.

Similar fix as
- rB0945a79ed1eafae444d3021a5912cb39801a7209
- rB56d7e39b92997768b3db8ce2dbc262f869994145

Reviewers: mont29, campbellbarton

Maniphest Tasks: T80996

Differential Revision: https://developer.blender.org/D8973
Revision 3cbc5dd by Campbell Barton
September 22, 2020, 05:54 (GMT)
Object: check for negative index access with duplicator reading UV's
September 22, 2020, 05:16 (GMT)
Cleanup: comments, spelling
Revision b2782f7 by Hans Goudey
September 22, 2020, 02:46 (GMT)
Fix warning building without potrace

The library is no longer in extern, so it isn't necessary to include it
here.
Revision 4e667ec by Hans Goudey
September 22, 2020, 00:19 (GMT)
UI: Add curve geometry start and end panel

The placement of the start and end factor and mapping settings for
curves has been quite misleading for a long time. They were in the
"Bevel" subpanel, but they aren't related to bevel because they affect
curves with only extrusion and no bevel.

This commit moves these properties to their own subpanel, labeled
"Start & End Mapping".

Differential Revision: https://developer.blender.org/D8910
September 21, 2020, 19:29 (GMT)
Weld Modifier: Performance improvement

This commit contains the Performance improvement, that was originally
proposed in D8966.

It improves the performance of the Weld Modifier by a lot.

It had a loop with execution time O(N^2) which is now O(N*log(N)) at a
bare maximum.
Revision 6a9e9be by Hans Goudey
September 21, 2020, 18:21 (GMT)
Cleanup: Reduce indentation by returning early

Checking for NULL icons or draw info can remove some indentation later
in the funcitons, making the code more readable.
September 21, 2020, 18:03 (GMT)
GPencil: New Trace images using Potrace

This patch adds a new operator to convert a black and white image into
grease pencil strokes.

If the image is not B/W, an internal conversion is done.

This is the first operator using Potrace, but we expect to add more features in next Blender versions.

Reviewed By: HooglyBoogly

Maniphest Tasks: T79877

Differential Revision: https://developer.blender.org/D8951
Revision d93db4f by Hans Goudey
September 21, 2020, 17:14 (GMT)
Cleanup: Declare variables where initialized
September 21, 2020, 14:09 (GMT)
Fix T80899: Crash on editing multiple UVs of multiple different objects at the same time

The issue was two fold.

First something sets the loop element tag and doesn't clear it before
the UV code in question tries to use the tags. Added a sanity clear to
make sure that it operates on a clean tag state.

The next one was that the UV maps in question had quite a few points
that had zero length UV loop edges. This would lead to division by
zero.

Reviewed By: Jeroen Bakker, Brecht

Differential Revision: https://developer.blender.org/D8967
September 21, 2020, 13:18 (GMT)
Various fixes in UI messages.

Along some other typos in comments or variable names.
Revision a34e7c3 by Julian Eisel
September 21, 2020, 13:03 (GMT)
Cleanup (UI): Early-exit rather than having a big-ish conditional body

It's generally considered a better codestyle to check conditions early
and exit early when they are not met, over having most logic of a
function within a big `if`-block. Otherwise people have to go over the
entire block to see if there's possibly an `else` somewhere, or any
followup logic.
Revision 7883ccd by Julian Eisel
September 21, 2020, 13:01 (GMT)
Fix T80854: Search buttons fail in Adjust Last Operation Panel

There's the old and ugly hack where the `uiBut.poin` points to the
button itself. When reallocating the button we have to update that
pointer of course.
September 21, 2020, 12:43 (GMT)
Cleanup: move some paint helpers to ED_ 'namespace'.

Those two functions had `BKE_` prefix, were defined in BKE headers, but
implemented in ED code, yuck.

Moved everything to ED area for now, since those do not look fondamental
enough to belong to BKE, and none of their usages requires it currently.
September 21, 2020, 12:24 (GMT)
Fix T79373: Forbid painting on linked image from 3DView.

As noted by @lichtwerk (thanks), one can have a local object and/or
material using a linked image data-block, this case needs some different
handling to prevent painting on such linked image.

For now, tweak `BKE_paint_proj_mesh_data_check` (eeeek, that name
prefix!) to consider paintslots with linked image as 'non-existing'.
Revision 1547522 by Bastien Montagne
September 21, 2020, 11:54 (GMT)
Add missing new liboverride option to py-defined collections props doc.
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021