Blender Git Loki

Blenderin Git "master"-kehityshaaran kommitit.

Page: 730 / 5574

June 10, 2020, 17:45 (GMT)
Make `BKE_scene_copy` fully handle all duplicate modes, deep copy included.

This greatly simplifies and unifies logic.

Also addresses T77255: full scene copy will now use same preferences
parameters as object or collection duplicate to choose which data-blocks
to copy along.
June 10, 2020, 17:45 (GMT)
Make `BKE_collection_duplicate able to handle master collections.

Those are then assumed already duplicated, and not touched. However, all
of ther objects and sub-collections can still be processed as with any
other regular collection...
June 10, 2020, 17:02 (GMT)
BLI: add Map.pop_default method

There is a nice use case for this in depsgraph code.

Also I added some previously missing calls to std::move.
June 10, 2020, 16:46 (GMT)
Fix T77047: Dyntopo Sample detail size on hidden mesh causes crash

The `Toolbar` and `Sidebar` hide the corresponding panel
`VIEW3D_PT_sculpt_dyntopo` by polling for context.sculpt_object and
context.tool_settings.sculpt. In the Active Tool in the Properties
Editor this poll does not return False though, thus the
sample_detail_size is possible from there.

Second security check (the operator poll `SCULPT_mode_poll`) checks the
active object -- that is still valid even if hidden, so we are allowed
to execute the operator. However the active object becomes NULL once the
area is switched in `sample_detail()` -- see `CTX_wm_area_set`), leading
to the crash.

Dont think there is a quick and easy way to do this in the poll from the
Properties Editor, so just check for a valid active abject in the
operator and return OPERATOR_CANCELLED if we dont have it.

Maniphest Tasks: T77047

Differential Revision: https://developer.blender.org/D7832
Revision 4b39de6 by Julian Eisel
June 10, 2020, 16:40 (GMT)
Fix T74101: File Browser in macOS fullscreen crashes or makes windows unusable

When closing the File Browser window after making it fullscreen, Blender would
either crash or all windows would disappear, with no obvious way to bring them
back.

The "fix" is to not allow fullscreen for File Browsers (or any future "dialog"
windows), but only maximizing. From what I can tell that's how secondary
windows are supposed to work on macOS. What we previously did seemed like
something macOS doesn't handle cleanly, and I didn't find a simple way to do so
on our side.
June 10, 2020, 16:27 (GMT)
BLI: fix type forwarding in Map

Without this change, the code might do an unwanted conversion.
June 10, 2020, 16:27 (GMT)
BLI: support constructing StringRef from start and end pointer
Revision 2d69536 by Hans Goudey
June 10, 2020, 15:23 (GMT)
UI: More specific modifier move to index operator description
Revision a9dfad8 by Hans Goudey
June 10, 2020, 15:16 (GMT)
Fix T77694: Start panel animation when expansion data changes

During normal drawing there is a rather complicated method to check
whether the panels should be animating. It's not set up to deal with
the panel expansion changing from outside the UI, which is now possible
with the panel expansion connected to the modifier's show_expanded
property.

The solution is to activate panel animation if setting the expansion
property has changed.
Revision b0ac7a8 by Hans Goudey
June 10, 2020, 15:08 (GMT)
UI: Only set first bit of modifier expansion fag with Python

Only the flag for the top level panels is exposed with RNA, so this adds
a set method to only change that bit.
June 10, 2020, 15:01 (GMT)
Cleanup: use proper enum type in parameter of BKE_scene_copy.
June 10, 2020, 14:48 (GMT)
Enable (deep) copy of overrides.

This commit enables basic copy of overrides on generic ID level, as well
as from (deep) copy operators for objects and collections.

So e.g. if your linked overridden caracter is in a collection, you can
now (from the outliner) Duplicate that override collection to get a new
overriding copy of the character.

We still need operators (new or modifying existing ones) to handle that
from 3DView e.g.

Note that deep copy code for objects/collections (and incidently
animdata) had to be modified to avoid duplicating/making local IDs that
remain linked ones being used by overrides ones.
June 10, 2020, 14:48 (GMT)
Fix (unreported) disapearance of some overrides after save & reload.

The override operations generated from 'do not follow' RNA pointer
properties (i.e. pointers to other IDs) were not properly clearing their
'no more used' flag, and hence were incorrectly deleted on second save.
June 10, 2020, 14:31 (GMT)
Blenloader: Don't just crash when a struct name is not known

Related to T77524.

This brings back the old way of handling corrupted data.
June 10, 2020, 14:16 (GMT)
Fix T77524: Don't try to write storage of node with undefined node

This cannot work, because the storagename is the empty string.
Revision d62bbf4 by Julian Eisel
June 10, 2020, 13:52 (GMT)
UI: Show library names grayed out and right-aligned in menus

Should separate the data-block name better from the library name and improve
readability.
June 10, 2020, 13:51 (GMT)
Mesh Edit: preserve Custom Normal vectors in topology operators.

Custom Loop Normals are normally encoded relative to the default
normals, similar to normal maps, allowing them to naturally follow
mesh deformations. Changes to mesh topology however often result
in nonsensical effects that are not desired.

The Remove Doubles operation especially (now known as Merge By
Distance) is intended as a purely topological operation, and
definitely should not change the vector of the custom normals.

This patch implements that behavior by converting the relative
encoding into an absolute vector layer for the duration of the
operation. It also modifies other Merge types in this way for
consistency, the Rip operator as their inverse counterpart;
and also Delete, Dissolve, Connect Path and Knife operators
as other examples more related to topology than shape.

On the technical side, this ports mesh_normals_loop_custom_set
to BMesh, and then uses a temporary Custom Data layer to store
the normals as vectors for the duration of the above mentioned
operations. When the normals are converted back to custom data,
the caller can choose whether to mark edges as sharp to preserve
distinct normals, or just average them instead. All but Remove
Doubles choose to average for now.

Differential Revision: https://developer.blender.org/D4994
June 10, 2020, 13:47 (GMT)
Cleanup: improve custom data type names

This is related to T76659.

This just renames data type names to `CD_PROP_STRING`, `CD_PROP_FLOAT`
and `CD_PROP_INT32`. It makes them a bit more specific and removes
unnecessary abbreviations.

Reviewers: brecht

Differential Revision: https://developer.blender.org/D7980
June 10, 2020, 13:42 (GMT)
Depsgraph: use blender::Set instead of std::set

We decided that `blender::Set` should be the default choice for a set
data structure in Blender.

Reviewers: sergey

Differential Revision: https://developer.blender.org/D7982
Revision a7ea07c by Jacques Lucke
June 10, 2020, 13:33 (GMT)
Depsgraph: use blender::Vector instead of std::vector

We decided that `blender::Vector` should be the default choice for
a vector data structure in Blender.

Reviewers: sergey

Differential Revision: https://developer.blender.org/D7981
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021