Blender Git Loki

Blenderin Git "master"-kehityshaaran kommitit.

Page: 553 / 5574

Revision a03bd64 by Hans Goudey
October 2, 2020, 18:14 (GMT)
Property Search: Don't use search color for subpanel titles

This replaces the blue theme color for subpanel titles with the the same
fade as for parent panels.

The search color doesn't work well for subpanel title colors. And actually,
because there are often buttons with checkboxes in the panel headers, we
don't have to treat this indicator any differently than regular buttons.

Differential Revision: https://developer.blender.org/D8976
Revision 933bf62 by Hans Goudey
October 2, 2020, 18:10 (GMT)
Property Search: Differentiate search filtered and inactive buttons

Currently there's no way to know if a button is inactive when it doesn't
match the search results, because they use the same 50% gray level.

This isn't a huge problem, but it could lead to confusion. This commit
uses a subtle solution, a 25% opacity when the button is inactive and
also filtered by search.

This requires flipping the meaning of the UI_SEARCH_FILTER_MATCHES
flag in the code, and also adding a widget_alpha_factor utility in
the widget code.

Differential Revision: https://developer.blender.org/D8975
Revision 6f96dd8 by Hans Goudey
October 2, 2020, 18:06 (GMT)
Fix T78503: Disabled layout portion passes mouse through

3D Viewport -> Sidebar -> View -> Local Camera is disabled. When you
click on it, box select starts. This behavior isn't intended, and fixing
it is quite simple. The only case where this would continuing would
still be desired is if a disabled button overlapped with a non-disabled
button, but this shouldn't be the case anywhere.

Differential Revision: https://developer.blender.org/D8832
Revision a4aa94c by Hans Goudey
October 2, 2020, 18:02 (GMT)
Cleanup: Declare variables where initialized

Also reduce the scope of some variable declarations.
This also allows making some variables constant.
October 2, 2020, 17:47 (GMT)
Cleanup: Fix build error on windows

int and eContextResult are different types to MSVC
leading to a function signature mismatch.
October 2, 2020, 17:42 (GMT)
Fix non-thread safe code in view layer object hash

Found as part of D8324, multithreaded Cycles object sync, where it caused
a crash on concurrent access to object holdout state.
October 2, 2020, 17:31 (GMT)
Cleanup: clang-format
October 2, 2020, 17:26 (GMT)
Cycles: Add command line option for overriding the compute device

The current way of setting the compute device makes sense for local
use, but for headless rendering it it a massive pain to get Cycles
to use the correct device, usually involving entire Python scripts.

Therefore, this patch adds a simple command-line option to Blender
for specifying the type of device that should be used. If the option
is present, the settings in the user preferences and the scene are
ignored, and instead all devices matching the specified type are used.

Differential Revision: https://developer.blender.org/D9086
October 2, 2020, 16:56 (GMT)
Cleanup: Use enum for return values in context callbacks

Define enum `eContextResult` and use its values for returns, instead of
just returning 1, 0, or -1 (and always having some comment that explains
what -1 means).

This also cleans up the mixup between returning `0` and `false`, and `1`
and `true`. An inconsistency was discovered during this cleanup, and
marked with `TODO(sybren)`. It's not fixed here, as it would consititute
a functional change.

The enum isn't used everywhere, as enums in C and C++ can have different
storage sizes. To prevent issues, callback functions are still declared
as returning`int`. To at least make things easier to understand for
humans, I marked those with `int /*eContextResult*/`.

This is a followup of D9090, and is intended to unify how context
callbacks return values. This will make it easier to extend the approach
in D9090 to those functions.

No functional changes.

Differential Revision: https://developer.blender.org/D9095
October 2, 2020, 15:40 (GMT)
Fix T81345: part four, fix handling of IDProperties in edit armature undo.

Specific armature editing undo code would duplicate and store a list of
editbones. However, those are not linked to main data storage and should
therefore never affect ID usercounting.
October 2, 2020, 15:40 (GMT)
Fix T81345: part three, armature `free_data` was not handling editbones properly.

Armature freeing would not correctly free its editbone IDProperties.

Add a utils to free the whole list of edit bones, and properly handle
their potential IDProperties.
October 2, 2020, 15:40 (GMT)
Fix T81345, part two: crash in depsgraph when freeing COW armature.

Freeing of bones' IDproerties from Armature `free_data` callback would always
attempt to do user refcounting, which should never be done from that code.

This would generate crashes in depsgraph/COW context e.g.
October 2, 2020, 15:40 (GMT)
Fix T81345: Part one: Missing handling of ID pointers from EditBone IDProperties.

So far data management code would simply fully ignore potential ID
pointers in custom properties of edit bones (which are a copy of those
from regular `Bone`). This would lead to all kind of issues, among which
refcounting inconsistencies, missing clearing of data uppon deletion,
etc.
October 2, 2020, 15:40 (GMT)
Cleanup: Move `EditBone` structure definition from `ED` to `BKE` area.

Access to this structure will be needed in BKE's armature code.
October 2, 2020, 15:05 (GMT)
Fix T81200: Crash on certain armature select operators when OpenGL Depth
Picking is disabled

Affected were (at least)
- Select Linked pick
- Select Shortest Path

Was originally caused by rB8b347fc2cdc6 [which got improved in
rBfc8a7a44b200 - but only partially].

After removal of BONESEL_NOSEL we have to filter out -1 from the hits for
any bone picking it seems (since armature drawing uses this).
In rBfc8a7a44b200, this was done for 'ED_armature_edit_select_pick' (or
'get_nearest_editbonepoint' precisely), now do this for
'ed_armature_pick_bone_impl' as well.

Reviewers: campbellbarton

Maniphest Tasks: T81200

Differential Revision: https://developer.blender.org/D9080
Revision 8157305 by Hans Goudey
October 2, 2020, 14:17 (GMT)
UI: Improve UV sticky select mode description

The sticky_select_mode property is an enum where each item has a
different behavior, but currently the description is for a single one
of the items. It should be more general, especially because one of the
items is "Disabled."

A couple more problems:
- "Automatically" is not so helpful. Many things any program does are
"automatic", it doesn't really help to say it.
- "Also" is bad grammar.
- Overly complex wording

This also adjusts the SHARED_VERTEX tooltip, because "irrespective"
should have "of" after, but it's also unecessarily complex.

Differential Revision: https://developer.blender.org/D9049
October 2, 2020, 13:42 (GMT)
Cleanup: Refactor `ed_screen_context()` to use hash lookups

Refactor `ed_screen_context()` to use `GHash` lookups instead of a
sequence of string comparisons. This should provide a nice speedup,
given that the hash for `member` only has to be computed once instead of
matching it to each possible string.

Reviwed by: brecht

Differential Revision: https://developer.blender.org/D9090
October 2, 2020, 13:42 (GMT)
Cleanup: split up `ed_screen_context()` into separate functions

Refactor `ed_screen_context()` to call separate functions, instead of
having the entire functionality in one function. Each function now only
retrieves the data it needs from the context. Furthermore, some string
comparisons are removed.

No functional changes.

Reviwed by: brecht

Differential Revision: https://developer.blender.org/D9090
October 2, 2020, 13:14 (GMT)
Volumes: make Mesh to Volume modifier independent of object transforms
October 2, 2020, 12:05 (GMT)
Experimental Features: More robust way of sanitizing options
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021