Commit Graph

75472 Commits

Author SHA1 Message Date
Julian Eisel
d52551401e Fix wrong usages of region align enumerations
`ARegion.alignment` unfortunately is a mixture of value and bitflag
enumerations. When checking for left/right/top/bottom region alignment,
the flags have to be masked out usually.
Most of the fixed cases here probably didn't cause issues in practice,
but could in fact break at any point when surrounding logic changes.

In fact the assert in #region_visible_rect_calc() failed in an older
file from https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=949035. This
fixes it.
2020-01-16 16:13:15 +01:00
Bastien Montagne
5b8c2301d8 Merge branch 'blender-v2.82-release' 2020-01-16 16:08:17 +01:00
Bastien Montagne
d74f9c4b7b Fix T72887: Outliner crashes when after undo of some linking operation.
Outliner tree building code was not handling properly empty libraries
(i.e. Lib datablocks in our bmain which have no used actual data
anymore).

Main issue here is unclean states of indirect hierarchies of linking
involving several libraries after undo operation.

This is not a critical issue though, just annoying and untidy.
2020-01-16 16:07:16 +01:00
Clément Foucault
0461ff764a Fix EEVEE: Planar Reflection data has inverted facing
Unreported bug
2020-01-16 15:56:45 +01:00
Clément Foucault
faf563d27c Fix T71788 Invalid (pink) shader when using wireframe node
This was caused by the clip distance not being passed by the geometry
shader.
2020-01-16 15:56:45 +01:00
Clément Foucault
32f0bb0523 Fix T70766 EEVEE: Performance drop with node tree in 2.81 2020-01-16 15:56:45 +01:00
Brecht Van Lommel
59d3e4357a Merge branch 'blender-v2.82-release' 2020-01-16 15:52:53 +01:00
Sybren A. Stüvel
59589457a5 Cleanup: Clarification of the Particle.uv_on_emitter() function docs
Just some rewording of the documentation of `Particle.uv_on_emitter()`,
so that it no longer refers to 'derived mesh' but 'evaluated mesh', and
document that it expects a modifier from an evaluated object.

No functional changes.
2020-01-16 14:58:45 +01:00
Sybren A. Stüvel
3c426feb12 Fix T73121: Blender crashes on accessing particle uv_on_emitter
Blender wasn't checking whether the passed modifier actually contained an
evaluated mesh, before accessing the mesh pointer.
2020-01-16 14:58:45 +01:00
mano-wii
e7e454f964 Merge branch 'blender-v2.82-release' 2020-01-16 09:16:46 -03:00
mano-wii
9a6551543b Fix crash with Proportional Edit Connected in UV editing
Caused by rB86a2ffc3ab32
2020-01-16 09:14:27 -03:00
Julian Eisel
003be8aa7c UI: Use same precision in "Move" redo panel as elsewhere
The floating "Move" redo panel showed transform values with less
precision than in other places (e.g. sidebar and properties editor).
With Millimeters as unit it would even round to full integers, which
may be an issue since you typically work at higher precisions with this
unit.

Note that this only applies to the visual precision, internally we use
full floating point `float`s still.

Fixes T70367.
2020-01-16 12:13:47 +01:00
Julian Eisel
25cb12dc71 UI: Show animation cancel button in all status-bars
Previously the button would only show up in the status-bar located in
the same window that had the screen with the animation timer.
I don't see a reason not to show the button in all status-bars instead,
other animation feedback is also displayed in all windows.

Fixes T72194.
2020-01-16 11:58:37 +01:00
Bastien Montagne
dd4d27e907 Merge branch 'blender-v2.82-release' 2020-01-16 11:36:20 +01:00
Bastien Montagne
3ee6d74f93 Fix T73125: Crash when opening a file containing a Line Style.
Dummy typo in rB2e6159a4.
2020-01-16 11:35:10 +01:00
Campbell Barton
2dfeb25c54 Cleanup: remove unused PYTHONPATH from freestyle
This accesses PYTHONPATH directly, ignoring Py_IgnoreEnvironmentFlag.
Remove since it's not used.
2020-01-16 21:04:09 +11:00
Campbell Barton
e17b075a65 Merge branch 'blender-v2.82-release' 2020-01-16 18:32:47 +11:00
Campbell Barton
6c91509745 Fix T73149: Adjust Last Operation uses horizontal layout
The horizontal layout was clipping text for some enums.
2020-01-16 18:27:23 +11:00
Campbell Barton
be521a7457 Merge branch 'blender-v2.82-release' 2020-01-16 16:44:10 +11:00
Campbell Barton
7570c07bfd Fix T73150: Python tooltips missing from toolbar 2020-01-16 16:26:50 +11:00
Campbell Barton
ef9e278b67 Cleanup: unused warnings 2020-01-16 16:25:12 +11:00
Campbell Barton
3de84f2f1b Merge branch 'blender-v2.82-release' 2020-01-16 15:40:00 +11:00
Stanislav Blinov
967ac9b6e6 Fix incorrect return value for mesh vertex connect 2020-01-16 15:33:21 +11:00
Lukas Stockner
7f571aad22 Merge branch 'blender-v2.82-release' 2020-01-16 02:21:32 +01:00
Lukas Stockner
7d8a186335 Fix T73133: UDIM texture count in Eevee is limited by OpenGL
Based on @fclem's suggestion in D6421, this commit implements support for
storing all tiles of a UDIM texture in a single 2D array texture on the GPU.

Previously, Eevee was binding one OpenGL texture per tile, quickly running
into hardware limits with nontrivial UDIM texture sets.
Workbench meanwhile had no UDIM support at all, as reusing the per-tile
approach would require splitting the mesh by tile as well as texture.

With this commit, both Workbench as well as Eevee now support huge numbers
of tiles, with the eventual limits being GPU memory and ultimately
GL_MAX_ARRAY_TEXTURE_LAYERS, which tends to be in the 1000s on modern GPUs.

Initially my plan was to have one array texture per unique size, but managing
the different textures and keeping everything consistent ended up being way
too complex.

Therefore, we now use a simpler version that allocates a texture that
is large enough to fit the largest tile and then packs all tiles into as many
layers as necessary.

As a result, each UDIM texture only binds two textures (one for the actual
images, one for metadata) regardless of how many tiles are used.

Note that this rolls back per-tile GPUTextures, meaning that we again have
per-Image GPUTextures like we did before the original UDIM commit,
but now with four instead of two types.

Reviewed By: fclem

Differential Revision: https://developer.blender.org/D6456
2020-01-16 02:06:49 +01:00
Sebastián Barschkis
689a873029 Fix T72860: Mantaflow Fluid Sim fails when simulation starts after frame 1 2020-01-15 22:07:06 +01:00
Clément Foucault
848b28d71e Fix T72104 Blender selects faces outside of Clipping Region if X-Ray is off 2020-01-15 19:54:27 +01:00
Sebastián Barschkis
588f2d2944 Fix T72970: [Mantaflow] When changing the domain settings, the current frame of the scene is set to 1 2020-01-15 18:55:40 +01:00
Julian Eisel
eca8bae671 Fix T51054: NULL-dereferences in crash-handler callback 2020-01-15 18:08:34 +01:00
Julian Eisel
ca49643f3c Fix T70965: Undo crash with specific file
Not sure how the WorkSpaceLayout.screen pointer could end up being NULL,
but apparently that happens, or at least happened with older files.

Rather than just adding NULL-checks, prefer not keeping around those
invalid layouts at all.
2020-01-15 17:48:45 +01:00
Sebastián Barschkis
7e20d6930d Fluid: Additional fix for relative cache paths 2020-01-15 16:32:39 +01:00
Sebastián Barschkis
cdd937c6dd Fluid: Fix T72971
Incorporated suggestions from the task discussion
2020-01-15 16:29:08 +01:00
Sebastián Barschkis
adcc9d014c Fluid: Moved grid reset loop for inner obstacle cells from blenkernel code into Mantaflow
Having this loop in directly Manta is faster and potentially fixes issues T72783 and T72894.
2020-01-15 16:28:56 +01:00
Sebastián Barschkis
f7fa6cd1da Fluid: Additional fix for relative cache paths
Added missing conversion from relative to absolute paths.
2020-01-15 16:28:43 +01:00
Sebastián Barschkis
5f8b290eb8 Fluid: Fix for relative cache paths
Relative paths in the cache are no longer converted into absolute paths automatically.
2020-01-15 16:28:25 +01:00
Jacques Lucke
c27acbcfb7 Fix T71690: Skip enum item separators in uiItemEnumR_string_prop
Reviewers: campbellbarton

Differential Revision: https://developer.blender.org/D6589
2020-01-15 16:09:27 +01:00
Sebastián Barschkis
d571e9055a Fluid: Fix T72971
Incorporated suggestions from the task discussion
2020-01-15 15:51:49 +01:00
Sebastián Barschkis
2ff3877f71 Fluid: Moved grid reset loop for inner obstacle cells from blenkernel code into Mantaflow
Having this loop in directly Manta is faster and potentially fixes issues T72783 and T72894.
2020-01-15 15:51:49 +01:00
Julian Eisel
f842ffb107 Fix crash with some hidden regions after previous commit
E.g. in the default "Animation" workspace this would crash.
2020-01-15 15:24:43 +01:00
Julian Eisel
758361556b Fix invalid region rectangles, sanitize dynamic region size calulations
It was too easy to end up with invalid region rectangles and we were
badly protected against them, so that they were hard to catch.
In fact we still create a main region for the top-bar, which ended up
getting a region height of -1. While this doesn't seem to have caused
issues in practice, we should prevent them entirely.

So idea was that at the end of region layout resolving,
`BLI_rcti_is_valid()` should return `true` for the region rectangle.
Further changes here ensure this is true: The `RGN_FLAG_TOO_SMALL` flag
is now set whenever there is not enough space for a region or if it
would get a size of zero or less.

Note: Should the assert fail, please do not just disable it and try to
actually address the root of the issue.
2020-01-15 15:05:11 +01:00
Clément Foucault
3fa548f986 Fix T72871 Overlay: Spotlights cone is much smaller than before 2020-01-15 14:45:42 +01:00
Clément Foucault
aa3720ed82 Fix T72574 Overlay: 'Show Cone' for Spotlights not working anymore 2020-01-15 14:45:42 +01:00
Robert Guetzkow
0e94d8bbe0 Fix T72302: Only hide objects if their collection is visible
In Blender 2.80 Shift + H (`object_hide_view_set(unselected=True)`) used to
(temporarily) hide objects only if their collection was visible in the current
view layer.

This behavior was changed in rB0812949bbc3d7acfd1f20a47087ff973110aa177 (D5992)
by using `BASE_VISIBLE_DEPSGRAPH` for the decision which object's (temporary)
visibility should remain unchanged. Since the view layer visibility and depsgraph
visibility has been decoupled in said commit, the correct condition
to check is `BASE_VISIBLE_VIEWLAYER`.

This patch is a fix for T72302

Differential Revision: https://developer.blender.org/D6583
2020-01-15 12:21:45 +01:00
Campbell Barton
79bd14d0fd Merge branch 'blender-v2.82-release' 2020-01-15 20:15:07 +11:00
Campbell Barton
c0793d6629 Fix T72419: 3D cursor placement flips axis with geometry orientation 2020-01-15 20:10:58 +11:00
Philipp Oeser
9d7b2e3068 Merge branch 'blender-v2.82-release' 2020-01-15 10:01:25 +01:00
Philipp Oeser
5977ed3470 Fix T68489: Shrinkwrap modifier with project not working for curves
rB4cde92303f3d made a MESH-only check (but that is no longer mandatory
since the Mesh is fetched by MOD_deform_mesh_eval_get instead of ctx-
>object->data now...). This would fail for projecting beveled curves
(resulting mesh missing), now also get the mesh for curves if we use
MOD_SHRINKWRAP_PROJECT (and only then).

Maniphest Tasks: T68489

Differential Revision: https://developer.blender.org/D6548
2020-01-15 09:56:56 +01:00
Philipp Oeser
1a28c142bf Merge branch 'blender-v2.82-release' 2020-01-15 09:46:40 +01:00
Philipp Oeser
75100d0b94 Fix T72648: Texture Paint color sampling always samples only 1st tile
when using UDIMS

A more generic approach might be considered in the future (I assume
there are other operators around that need an update in shifting their
uvs) though.

Maniphest Tasks: T72648

Differential Revision: https://developer.blender.org/D6570
2020-01-15 09:40:48 +01:00
Campbell Barton
c8450c480f Merge branch 'blender-v2.82-release' 2020-01-15 19:08:02 +11:00