Commit Graph

92336 Commits

Author SHA1 Message Date
Clément Foucault
ee0c05e886 DRW: Remove accidentaly commited stray global variable 2022-05-15 19:24:10 +02:00
Hans Goudey
e46a38942a Cleanup: Simplify loop syntax, decrease variable scope
Mostly changes split from D14685, which refactors the hide flags.
2022-05-15 15:41:46 +02:00
Clément Foucault
3e989e8c8d GPUVertBuf: Add support for binding as buffer texture
This is often needed and somehow cumbersome to set up. This will allow some
code simplifications.
2022-05-15 15:22:47 +02:00
Hans Goudey
b44cec0eca Cleanup: Remove unused DerivedMesh function 2022-05-15 12:20:13 +02:00
Hans Goudey
450a190095 Cleanup: Remove unused subsurf ccg functions
This simplifies some refactoring to mesh hide flags (see D14685).
2022-05-15 12:12:14 +02:00
Hans Goudey
901fc29df1 Cleanup: Fix compile warnings on windows 2022-05-15 11:46:38 +02:00
Joseph Eagar
dcaaa5b6f4 Merge branch 'blender-v3.2-release' 2022-05-15 01:46:42 -07:00
Joseph Eagar
b54abd7ede Fix T80174: Dyntopo not initializing face set values correctly
BMLog was zeroing face sets when creating new faces,
which is not valid.  They're now set to 1.
2022-05-15 01:44:09 -07:00
Joseph Eagar
a46f34d9b3 Merge branch 'blender-v3.2-release' 2022-05-15 00:36:42 -07:00
Joseph Eagar
f9751889df Fix T81715: Unprojected radius mode messes up sculpt texture radius
We really need to fix how unprojected radius (scene unit) works.
What happened is the paint code updates the brush's normal radius
with the current unprojected pixel radius, which was then
used by texture brush tiled mode.

To fix this I just cached the pixel radius at stroke start in
UnifiedPaintSettings->start_pixel_radius.
2022-05-15 00:33:22 -07:00
Hans Goudey
139a4b6a84 Fix: Build error due to previous commit 2022-05-14 19:46:56 +02:00
Hans Goudey
ea5bfedb49 Cleanup: Further use of const for retrieved custom data layers
Similar to cf69652618.
2022-05-14 18:57:52 +02:00
Hans Goudey
e1c8ef551f Cleanup: Use const arguments 2022-05-13 19:20:55 +02:00
Hans Goudey
c2bbd01b2f Cleanup: Use const arguments 2022-05-13 19:13:43 +02:00
YimingWu
7c9b6cc380 LineArt: Better behavior of smooth tolerance.
This fixes the smooth tolerance feature in master where sometimes you could
get over simplified chains and lose the shape it's supposed to be originally.

Reviewed By: Sebastian Parborg (zeddb)

Differential Revision: https://developer.blender.org/D14929
2022-05-14 00:56:09 +08:00
Hans Goudey
ee363ee7b3 Cleanup: Use standard variable names for curves 2022-05-13 18:44:09 +02:00
Hans Goudey
cf69652618 Cleanup: Use const when retrieving custom data layers
Knowing when layers are retrieved for write access will be essential
when adding proper copy-on-write support. This commit makes that
clearer by adding `const` where the retrieved data is not modified.

Ref T95842
2022-05-13 18:35:22 +02:00
Bastien Montagne
fa7224d8ed Merge branch 'blender-v3.2-release' 2022-05-13 18:07:31 +02:00
Bastien Montagne
074c695a0d Fix T98072: Regression: When appending a Scene, the Collections that are excluded get instanced into Current Scene.
This was due to using `BKE_scene_has_object` function, which uses the
cache of bases of the viewlayers, which do not have entries for the
content of excluded collections... Now use
`BKE_collection_has_object_recursive` instead.
2022-05-13 18:05:44 +02:00
YimingWu
870ad7d05d Fix T96781: LineArt proper object iterator.
This patch get rid of the _incorrectly used_ DG iterator in object loading,
and uses scene objects iteration to prevent problems.

Reviewed By: Sebastian Parborg (zeddb)

Differential Revision: https://developer.blender.org/D14907
2022-05-14 00:04:16 +08:00
Julian Eisel
ca2fb9bae9 Fix possible null-pointer dererence for active button data
The button returned from `UI_region_active_but_get()` is not guaranteed
to have active button data, so code can't rely on that.
2022-05-13 17:56:28 +02:00
Julian Eisel
8e717ce55a Fix crash when displaying some button tooltips
Steps to reproduce were:
- Factory startup
- Right-click in 3D View
- Move the mouse over "Shade Flat", wait for the tooltip

The changed logic in 4680331749 to lookup an active button was
incorrect. It didn't respect the priority of active button candidates.
2022-05-13 17:56:18 +02:00
Brecht Van Lommel
5baa3ecda6 Color Management: various improvements and fixes for image saving
* Respect the image file color space setitng for saving in various cases where
  it was previously ignored. Previously it would often use the sRGB or Linear
  color space even when not selected.
* For the Save As operator, add a Color Space option in the file browser to
  choose the color space of the file. Previously this was chosen automatically,
  now it's possible to e.g. resave a Linear image as Linear ACES.
* When changing the file format, the colorspace is automatically changed to an
  appropriate color space for the file format. This already happened before, but
  there was no visibility or control in the operator settings for this.
* Don't change color space when using the Save operator to save over the same
  file.
* Fix missing color space conversion for 16 bit PNGs, where it assumed wrongly
  assumed ibuf->rect would be used for saving. Add BKE_image_format_is_byte to
  more accurately test this.

Fixes T74610

Ref T68926

Differential Revision: https://developer.blender.org/D14899
2022-05-13 17:55:54 +02:00
Brecht Van Lommel
1e4cd98f0a Fix build error without unity build after recent changes
float3 should have been declared within the blender namespace. And forward
declaration is difficult with templated classes so just include header.
2022-05-13 17:55:54 +02:00
Julian Eisel
8d43ee1b08 Fix T97518: All buttons with eyedropper highlight if one is hovered
Issue is that the operator acts on the active button, and also uses that in the
poll. So the actually active button would affect the poll of a different
button. For the superimposed icons we need to be able to execute these polls
properly for non-active buttons.

This enables temporarily overriding the active button for lookups via context.
While a bit of a hack it makes sense conceptually.

Reviewed By: Campbell Barton

Maniphest Tasks: T97518

Differential Revision: https://developer.blender.org/D14880
2022-05-13 17:55:52 +02:00
Julian Eisel
7c9c13cf83 Fix possible null-pointer dererence for active button data
The button returned from `UI_region_active_but_get()` is not guaranteed
to have active button data, so code can't rely on that.
2022-05-13 17:54:12 +02:00
Julian Eisel
908e6c7c4d Fix crash when displaying some button tooltips
Steps to reproduce were:
- Factory startup
- Right-click in 3D View
- Move the mouse over "Shade Flat", wait for the tooltip

The changed logic in 4680331749 to lookup an active button was
incorrect. It didn't respect the priority of active button candidates.
2022-05-13 17:54:12 +02:00
Sergey Sharybin
a0748153b4 Tracking: Move all selection logic to operator exec()
Unlikely that users will notice this, but this makes it so that
the operator behaves consistently across its exec() and invoke()
code paths.
2022-05-13 17:21:55 +02:00
Sergey Sharybin
a80ad0a545 Refactor: Use coordinate in API for track selection
Currently no functional changes. Prepares for a change which will
allow to more consistently redo the track selection operator.
2022-05-13 17:18:25 +02:00
Julian Eisel
4680331749 Fix T97518: All buttons with eyedropper highlight if one is hovered
Issue is that the operator acts on the active button, and also uses that in the
poll. So the actually active button would affect the poll of a different
button. For the superimposed icons we need to be able to execute these polls
properly for non-active buttons.

This enables temporarily overriding the active button for lookups via context.
While a bit of a hack it makes sense conceptually.

Reviewed By: Campbell Barton

Maniphest Tasks: T97518

Differential Revision: https://developer.blender.org/D14880
2022-05-13 15:55:11 +02:00
Campbell Barton
6f3d155293 Merge branch 'blender-v3.2-release' 2022-05-13 23:42:06 +10:00
Campbell Barton
05b56d55e8 Fix T97386: Node socket labels swallow click/drag events
Regression caused by [0] which made `ui_but_is_interactive` consider
label buttons with tool-tips to be interactive. This prevented
the clicks to pass through to the nodes for selecting/dragging.

Resolve this by allowing buttons to be activated for the purpose
of showing tool-tips but otherwise considering them disabled
(as if the UI_BUT_DISABLED is set when handling events).

[0]: 484a914647

Reviewed By: Severin

Ref D14932
2022-05-13 23:41:03 +10:00
Sergey Sharybin
d6c4317f35 Fix jump when switching accurate marker sliding
As a side effect the "sticky" search area on resize/move is also
resolved now: previously attempt to move search area past to where
it could be would make it hard to move it back. Now the search area
will always respond immediately to mouse motion, even after it got
clamped.
2022-05-13 14:12:01 +02:00
Sergey Sharybin
7533bee58b Cleanup: Remove dead code in tracking slide operator
The code was there prior pattern area affine transform and was never
used afterwards.

After so long time it should be safe to remove the unused code.
2022-05-13 14:12:01 +02:00
Jeroen Bakker
94ad77100c Merge branch 'blender-v3.2-release' 2022-05-13 12:55:24 +02:00
Jeroen Bakker
cbc024c3ca MacOS/AMD: Drawing artifacts in VSE.
Related to the partial revert done for T97272. It seems also that the
workaround should be enabled for any MACOS platform.
2022-05-13 12:54:41 +02:00
Sergey Sharybin
6e2270f3d3 Merge branch 'blender-v3.2-release' 2022-05-13 12:47:33 +02:00
Sergey Sharybin
e30ccb9a34 Fix crash toggling marker translate with marker offset
The shortcut is G-G.

Caused by loop argument "shadowing".
2022-05-13 12:39:40 +02:00
Sergey Sharybin
8741cf2038 Cleanup: Proper state check in marker slide operator
The previous code was had confusing logic, but since it was acting
more as a fall-back it did not cause bugs for users.
2022-05-13 10:42:28 +02:00
Kévin Dietrich
fa9e878e79 Fix T97330: UV points missing with some modifiers
When extracting UV point indices, only the vertex points coming from the
original geometry should be drawn. For this, the routines (for subdivision
and coarse meshes) would only consider a vertex to be real if the extraction
type is `MAPPED`, and that an origin index layer on the vertices exist
with a valid origin index for the current vertex.

However, if the extraction type is `MESH`, which can happen with for
example an empty Geometry Node modifier, or with deferred subdivision,
this would consider every vertex to not be "real" and therefore hidden from
the UV editor.

This reworks the condition for "realness" to also consider a vertex to be
real if there is no origin layer on the vertices. The check on the extraction
type is removed as it becomes redundant.

This only modifies the check in the UV data extraction for point indices,
however similar checks exist throughout the extraction code, these will
be dealt with separately in master.

Differential Revision: https://developer.blender.org/D14773
2022-05-13 09:26:34 +02:00
Campbell Barton
0d1b9eabf2 Merge branch 'blender-v3.2-release' 2022-05-13 16:14:29 +10:00
Campbell Barton
113b8030ce Fix T89909: Circle Select tool status bar doesn't match the operations
Assign get_name functions for select picking and circle select
so modifier keys show the result of holding the modifiers.
2022-05-13 16:09:04 +10:00
Germano Cavalcante
470cbad51a Fix T97872: Annotation lines lost AA
Since rB2a7a01b339ad, `lineSmooth` has lost its default value of true.

rBa0a99fb25284 only fixed the problem on master.

But thanks to @hitrpr for spotting the bug in version 3.2 too.

Differential Revision: https://developer.blender.org/D14876
2022-05-12 22:22:27 -03:00
Campbell Barton
427a2c920a Cleanup: spelling in comments, capitalize tags
Also add missing task-ID reference & remove colon after \note as it
doesn't render properly in doxygen.
2022-05-13 09:29:25 +10:00
Brecht Van Lommel
906b9f55af Cleanup: remove redundant float to byte conversion for stereo image saving
For non-stereo cases this is automatically handled by IMB_saveiff, no reason for
stereo to do this separately.

Ref D14899
2022-05-12 22:58:27 +02:00
Brecht Van Lommel
c0df1cd1b3 Cleanup: remove redundant code and data copying image save as operator
Store ImageSaveOptions directly in operator custom data instead of copying
to/from a copy on the stack.

Ref D14899
2022-05-12 22:58:27 +02:00
Brecht Van Lommel
1159b63a07 Cleanup: move image save options init to image_save.cc
The logic here is tightly coupled to the other image saving code.

Ref D14899
2022-05-12 22:58:27 +02:00
Brecht Van Lommel
6044c6d09b Cleanup: remove unused function declaration 2022-05-12 22:58:27 +02:00
Clément Foucault
c09cfdb251 DRW: Fix Compilation on OSX
Caused by rBe4bb898e40ee
2022-05-12 22:10:59 +02:00
Jason Fielder
073139e329 Metal: MTLState module implementation.
MTLState module implementation and supporting functionality in MTLContext for state tracking, texture binding and sampler state caching.

Ref T96261

Reviewed By: fclem

Maniphest Tasks: T96261

Differential Revision: https://developer.blender.org/D14827
2022-05-12 20:50:11 +02:00