Commit Graph

73971 Commits

Author SHA1 Message Date
Clément Foucault
ba5bbf14f9 Fix T71532 EEVEE: Hair UV/Color attributes not working 2020-01-14 16:55:11 +01:00
Clément Foucault
fca069a705 Fix T72547 Wireframe overlay clipping issues
The view vector was not correct in orthographic view.

Also reduce the curvature bias a little.
2020-01-14 16:55:11 +01:00
Jeroen Bakker
29ab2386c0 Fix T72200: Split Quad View Region Crash
When splitting a Quad View by dragging a corner an quad area can become
negative size because of a one pixel offset to calculate the start of
the area.

This patch solves this to make sure that there are no negative areas. By
adapting the `ARegion.winrct`.

Reviewed By: Severin

Differential Revision: https://developer.blender.org/D6579
2020-01-14 16:30:32 +01:00
Bastien Montagne
51add8e6d0 Fix T72255: VSE video addition broken when using recursive filebrowser view.
Fairly straight-forward issue, multi-files selection already feature the
root directory to use, no need to extract it again from a full path...
2020-01-14 15:54:16 +01:00
Sybren A. Stüvel
9ad0b7f8c7 Fix T68480: Normalize All weights with lock Active bug
The original code had 0 as a magic number in the test whether the weight
belongs to a locked group, instead of comparing it to the actual group
number.

Thanks @mano-wii for providing the diff.
2020-01-14 15:13:39 +01:00
mano-wii
0187735eea Fix T70606: 3D cursor oriented by geometry projects on objects displayed as bounds box and wire 2020-01-14 10:46:26 -03:00
Sybren A. Stüvel
d49fa504fd Fix T72861: Viewport Render Keyframes ignores Grease Pencil and Shape Keys
The Viewport Render Keyframes operator didn't include keyframes from
grease pencil animation or from mesh shape key animation (see T72861).

To find all related datablocks that could be considered as part of the
selected object, `BKE_library_foreach_ID_link(..., IDWALK_RECURSE)` is
used. To prevent relations like constraint targets from being visited,
the recursion is stopped when it finds a different object.

Reviewed By: mont29

Differential Revision: https://developer.blender.org/D6558
2020-01-14 14:01:25 +01:00
Bastien Montagne
ac723db57f Fix T71798: Full Copy Scene produce Orphan Data objects.
Never treat one of those horrorible 'IDs that are not real IDs' as
regular ID, and expect ID management code to do so. Unless there is a
very good reason, one should never explicitely pass those fake IDs to ID
management code directly.

In that specific case, user count is sort of 'disabled' in libquery
code, because master collections are not in bmain (`LIB_TAG_NO_MAIN`).
2020-01-14 12:07:24 +01:00
Jeroen Bakker
9954cbfca6 Fix T72063: Workbench Sculpt Render
When sculpting and doing a image render the workbench used the sculpt
batch what is created by a different GPU context and would not show up.

In debug builds an assert for this case is checked. I rechecked all
`use_sculpt_pbvh` that it also checked if it was rendering. Only the
workbench deferred didn't do this for the default render mode.

With this change the user can render a workbench render directly from
sculpt mode.
2020-01-14 11:03:45 +01:00
Campbell Barton
1e0b790364 Fix T70273: Auto-keyframe ignored by gizmos 2020-01-14 17:11:01 +11:00
Campbell Barton
fffba2b653 Cleanup: move property auto-keyframing to a generic API function
Prepare to call this from gizmos.
2020-01-14 17:05:59 +11:00
Hans Goudey
c56526d8b6 Fix T71329: Bevel: Don't drop offsets to 'in plane' faces
offset_meet creates offset lines that can't be directly intersected, so
the average of the points on each offset line is 'dropped' onto the
faces around the beveled vertex, which can depend on where
the loop starts.

This fix skips faces with the same normals as the "in plane" faces from
build_boundary.

Reviewed By: howardt

Differential Revision: https://developer.blender.org/D6521
2020-01-13 12:12:12 -05:00
Clément Foucault
60c6a74ce1 Fix T72152 DRW_debug_sphere Not Working After Overlay Refactor 2020-01-13 17:40:55 +01:00
Clément Foucault
2359979141 Fix T73044 Crash in UV editor when changing UV selection modes
Thanks to @campbellbarton for the fix.
2020-01-13 17:29:31 +01:00
Clément Foucault
84825e4b50 Fix T72957 Crash using Eye dropper in Edit mode with X-ray 2020-01-13 16:53:40 +01:00
Clément Foucault
b8bdb8e9e9 DRW: Fix stencil being modified by passes that are read only
This is because even if the glStencilMask is 0x00 the GL_DECR_WRAP and
GL_INCR_WRAP states still works and will modify the stencil.

Fix T73046 Overlapping parts of wireframes don't render at all in workench
with shadows turned on.
2020-01-13 16:27:01 +01:00
Clément Foucault
820794e162 Overlay: Edit Mode: Fix vertices depth test not always on 2020-01-13 16:27:01 +01:00
Jeroen Bakker
162cb74320 Fix T67305: Sculptmode Wireframe Coloring
When in sculptmode the wireframe coloring should always be disabled.
When an object was sculpted but had modifiers this was not detected and
the colors were still shown.

This fix will disable wireframe coloring for any object that is in
sculptmode.
2020-01-13 12:57:37 +01:00
Jeroen Bakker
44231386e4 Fix T72250: Select Boundary Loop
Edge Index display were not showing up after performing
"Select Boundary Loops" when in face selection mode. The operation
tagged the mesh that the selection was changed, but in the end this
didn't do anything within the depsgraph.

The fix changes this to recalc the geometry of the object. What also
syncs the selectmode flags. A better solution would be to update the
select flags only. But that could be done as future work when we have a
performance problems.
2020-01-13 10:48:43 +01:00
Jeroen Bakker
1b86b3c0f4 Fix T73069: Studiolights
Studiolights that were just created didn't had the
`STUDIOLIGHT_SPECULAR_HIGHLIGHT_PASS` flag. Without this flag the
studiolight the viewport didn't show the specular highlights and it
wasn't possible to switch the highlights on/off in the popover. After
reloading the studio lights this was possible.

This patch will always set the flag for any newly created, or being
edited studiolight, so the workbench render engine is fed with the right
data.
2020-01-13 09:22:00 +01:00
Luca Rood
0ef881cc57 Fix T71620: broken particle collisions due to rB0666ece2e2f9
An optimisation in the collision system for cloth (static collisions),
broke the particle collisions, as they take motion into account. This
restores the moving BVH required for the particle collisions, while
keeping the optimisation for the cloth collisions.

Reviewed By: mano-wii

Maniphest Tasks: T71620

Differential Revision: https://developer.blender.org/D6560
2020-01-12 17:23:02 +01:00
Sybren A. Stüvel
8e66183a98 USD Exporter: clarified export options in the UI
- "Only Export Selected Objects" → "Selection Only", as this is the
  standard used in other exporters.
- "Evaluation Mode" → "Use Settings for", as this is clearer for users
  who aren't as familiar with the technical details of the depsgraph.
- "Use Instancing" → "Instancing", and moved the checkbox to the end of
  the option list into its own box "Experimental". This looks a bit
  cleaner than just plonking "EXPERIMENTAL" in the checkbox label.
2020-01-10 15:43:01 +01:00
Jeroen Bakker
9867106199 Fix T71491: Sculpt Brush Text Color
When text drawing is disabled in the viewport the color of the sculpt
brh is set to the last used one. In th Light theme this is black what
makes it totally not visible.

This change will render the brush text using `TEXT_HI` as this is the
last one set when the text overlay is on.
2020-01-10 12:14:03 +01:00
Nathan Letwory
95200045f3 Version 2.82 cycle to beta for bcon3, stabilizing period 2020-01-10 08:10:27 +02:00
Campbell Barton
04c588294d Cleanup: use doxy sections in wm_event_system.c 2020-01-10 16:34:39 +11:00
Campbell Barton
6eb9cc101b Correct last commit, restore the double-click state for modal events 2020-01-10 16:31:25 +11:00
Campbell Barton
0920c1684b Fix T72999: Fast keystrokes ignored for operators with modal keymaps
Logic to convert double-click events into press events wasn't running
in the case an operator had a modal keymap, causing bevel for e.g.
to ignore keys pressed quickly.

Change event handling logic so modal handlers never
receive double click events, so checks for press/release are reliable.

While this is an old issue for mouse events in practice it wasn't
a problem since the first event typically executed/canceled.
Support for keyboard double-click exposed the problem
for all modal operators that take numeric input.
2020-01-10 15:49:35 +11:00
Campbell Barton
62c6038531 Docs: explain logic behind wm_event_modalkeymap 2020-01-10 15:10:13 +11:00
Campbell Barton
7eaed14fae Fix T72948: Smooth active tool gizmo vibrates 2020-01-10 13:08:43 +11:00
Sybren A. Stüvel
7ac8f61dc1 USD Exporter: removed 'Export' from the exporter option labels
Most options were 'Export …', now they are just '…'.
For example, 'Export UV Maps' → 'UV Maps'.
2020-01-09 15:58:02 +01:00
Sybren A. Stüvel
04122c8eb2 USD Exporter: clarification of some comments in the code
No functional changes.
2020-01-09 15:47:08 +01:00
Sybren A. Stüvel
e55ffb28a9 USD Exporter: make it possible to debug-print arbitrary export graphs
This is useful for debugging things like the previous commit.

No functional changes to the actual USD exporter.
2020-01-09 15:47:07 +01:00
Sybren A. Stüvel
9f5f91d6bd USD Exporter: properly export objects whose parents are not exported
The exporter constructs an export hierarchy, and then traverses that
hierarchy from the root to the children. When an object is to be exported,
but its parent is not, it meant that this traversal from (great)parent to
children would skip these objects. This commit fixes that by inserting the
missing parents as 'transform only' into the hierarchy.
2020-01-09 15:47:05 +01:00
Sybren A. Stüvel
cf0f066c2d USD Exporter: removed 'Visible Objects Only' exporter option
The way the USD exporter currently works, it is not possible to export
invisible objects. As such, the 'Visible Objects Only' option was
confusing.

Exporting invisible objects means obtaining invisible evaluated objects
from the depsgraph, which is not something that's currently implemented.
Once that's done, we can reintroduce this option.
2020-01-09 15:46:46 +01:00
Sybren A. Stüvel
d98b38f97a USD Exporter: removed exclusion of 'Holdout' collections
This is in response to @brecht's remark in rBec62413f803e, where he
states that the approach was problematically interpreting the holdout
setting in a different way than what it was designed to do.

If we later want to add back a different "never include this in exports"
criterion, it can be easily done in
`AbstractHierarchyIterator::mark_as_weak_export()`. If such a criterion
should be file-format-specific, it can be done by overriding that
function in the file-format-specific subclass.
2020-01-09 15:46:46 +01:00
mano-wii
744a58918a Fix T72375: Crash when using spin tool
The original geometry referenced in `vtable` was deleted by the
`extrude_face_region` operator.
It is read soon after, so don't delete the original geometry
(param `use_keep_orig`).

This may have a small impact on performance.
2020-01-09 11:15:56 -03:00
Stanislav Blinov
2eafae4e39 Fix T71295: Duplicate macro faulty after rotation
As per T71295, the "duplicate+move" macro fails to store TRANSFORM_OT_translate properties once it's been used with rotation. I believe this is due to it being re-initialized with incorrect properties, reading bogus values from stored TRANSFORM_OT_rotate properties.

Force storing of actual operator id name instead of one defined in the macro, which in turn forces a name mismatch on initialization.

Reviewed By: #modeling, campbellbarton

Maniphest Tasks: T71295

Differential Revision: https://developer.blender.org/D6413
2020-01-09 09:02:17 -03:00
Campbell Barton
f681e9ea49 Fix UV gizmos poll failing with multiple objects
Only the active objects UV selection was checked.
This also avoids checking UV selection for every poll call,
now this is only done on refresh.
2020-01-09 17:50:52 +11:00
Campbell Barton
ce5a5b553d Fix multiple UV gizmos being linked at once
This happened when reloading the file after using different gizmos.
2020-01-09 17:01:05 +11:00
Campbell Barton
ac4057b95a Gizmo: use pivot center for UV gizmos 2020-01-09 16:42:24 +11:00
Campbell Barton
73098d2ca5 Gizmo: improve 2D arrow select detection
Fixes issue where UV transform circle was being masked by the arrows.
2020-01-09 12:45:58 +11:00
Campbell Barton
830aa758b4 Fix T72900: Mouse-move causes redraw when gizmos are hidden
Move redraw tagging to the gesture modal operator
to make sure this only runs when it's needed.

Caused by d591c8a350, which tagged the region to redraw when the
gizmos were tagged to refresh, however they wont redraw when hidden.
Thanks to @jbakker for finding the root cause.
2020-01-09 11:07:28 +11:00
Campbell Barton
99c798b8a6 Cleanup: centralize WM_gesture_end call
Prepare for adding extra logic on free (next).
2020-01-09 10:36:53 +11:00
Antonio Vazquez
533d146f48 Fix T72976: CRASH When Selecting Camera 2020-01-08 22:46:50 +01:00
William Reynish
c3b406a7c3 Revert recent change to the particles RNA, and only affect the UI.
Even though the name change is more correct, we don't want to change the API at this time.
2020-01-08 20:37:35 +01:00
mano-wii
f1516e007d Fix T72288: Left click on empty space inside file browser resets scrolling
Wasn't checking if there actually is a selection.
2020-01-08 16:45:09 +01:00
Julian Eisel
f52d9a878d Fix T72878: Alphabetical sorting in Outliner sorts shorter names last
E.g. "Cube" would be placed after "Cube.001", which is not what you'd
expect. 2.80 handled this correctly.

Loosely based on D6525 by @radcapricorn, but found a bug in that and
prefered to do some further adjustments.

Also activates test for this case.
2020-01-08 16:08:10 +01:00
Sergey Sharybin
cea67064da Fix T62311: Metaball animation playback crash
This commit restores old metaball workaround which was forcing their
update from a single thread.

The root of the issue comes to the fact that metaball evaluation needs
to access metaballs from duplilists, so they are properly polygonized
with corresponding motherball which is outside of duplilist.

In a more ideal world this will be implemented in a way that will not
require iterating over all duplilists, but only through the ones which
actually contain metaballs for the given motherball. In practice this
ends up in a huge refactor in both relations builder (which meeds to
see whether there are metaballs in duplilists without actually
creating duplilist as it can not be done prior scene is evaluated)
and in metaballs area which need to use new relations information.
Additionally, metaball evaluation must become thread-safe, which is
currently not a case with dupli-object matrices. There might be issues
deeper in polygonization code which I am not aware of.

Having this forced single-thread evaluation is same as Blender 2.79
was doing.

Think it's better to have slower but simpler solution than to invest
time in refactoring area which requires deeper design changes.

Reviewed By: dfelinto

Differential Revision: https://developer.blender.org/D6539
2020-01-08 14:38:54 +01:00
Philipp Oeser
75f82d28e3 Fix T72235: crash entering particle editmode with non-valid PTCacheEdit psys pointer
Caused by own rBe02ecd599bdc.
Can happen with e.g. cloth.

Also fixes T59583

Maniphest Tasks: T72235, T59583

Differential Revision: https://developer.blender.org/D6547
2020-01-08 13:33:46 +01:00
mano-wii
15ef1d4c80 Fix T72119: UV/Image Editor theme face colors with no effect
The `in int flag;` in `gpu_shader_2D_edituvs_faces_vert.glsl`
don't have the values `FACE_UV_ACTIVE` and `FACE_UV_SELECT`.

Add face flags then.

Original patch is from @EitanSomething

Differential revision: https://developer.blender.org/D6520
2020-01-08 09:21:39 -03:00