Commit Graph

125370 Commits

Author SHA1 Message Date
Campbell Barton 944663723a Fix the default directory for opening fonts
- By default on Linux the directory would be "/usr/share/" with
  "fonts" as the filename, now fonts is always treated as a directory.
- Correct the path for linked library fonts using a relative path.
2023-06-22 13:18:05 +10:00
Campbell Barton 39851db1fa Linux: remove historic bourne shell argument expansion workaround
This is a history workaround not needed for modern shells
(fixed with bourne shell SRV3, 1986).

This isn't used in other wrappers (snap package) for e.g.
2023-06-22 13:17:28 +10:00
Campbell Barton 8cd877641d check_licenses: minor improvements to output
Right align numbers and use thousands separator.
2023-06-22 12:35:51 +10:00
Campbell Barton 02b8bde4b3 Cleanup: use the term "props" for operator properties
Differentiate operators from their properties.
2023-06-22 12:35:49 +10:00
Campbell Barton 98b973294b Cleanup: spelling in comments 2023-06-22 12:35:48 +10:00
Germano Cavalcante 4d1593c4ad Transform Snap: Improve snap for bones
In order to better identify which is the normal of the point
(see #108711), it is interesting to identify which is the closest bone.

So, instead of testing the snap at each point and then each bone line,
test the bone lines first and after identifying the closest one, test
its points.

With the nearest bone identified, we can use its normal instead.
2023-06-21 21:22:30 -03:00
Germano Cavalcante 48ab99f54a Cleanup: Simplify transformation from normal to global space
Just multiply the original matrix without the translation
component.
2023-06-21 21:22:30 -03:00
Chris Blackbourn e0e3650495 Fix #108811: Follow active quads doesn't respect uv selection
Added selection support to the Follow Active Quads operator.

Simplified code and added comments.

Also added new error codes:
 * STATUS_ERR_MISSING_UV_LAYER
 * STATUS_ERR_NO_FACES_SELECTED

Pull Request: https://projects.blender.org/blender/blender/pulls/109095
2023-06-22 01:02:32 +02:00
Germano Cavalcante 93e008dd8b Transform Snap: Support 'Align Rotation to Target' for bone points
Align with the bone that the point is part of.

Ref #108711
2023-06-21 19:59:16 -03:00
Germano Cavalcante dea93845af Fix #108711: Snap with Align Rotation to Target do not align rotation for Empties or Bone
For now it only supports the body of the bone.

Head and tail will be supported later.
2023-06-21 19:37:02 -03:00
Germano Cavalcante 4585c8b28d Transform Snap: Remove parameter and use a more descriptive name
`sctx` can be accessed internally.

And `clip_planes_enable` makes it clearer what this method does.

Also note that this function had been accidentally removed for Cameras.
2023-06-21 18:41:08 -03:00
Germano Cavalcante 9ec127bb70 Transform Snap: Deduplicate code that register the result
The `Nearest2dUserData` object is called in all cases, so move the
registration to its destructor.
2023-06-21 18:24:15 -03:00
Germano Cavalcante 3bbd99e1cb Transform Snap: Remove unnecessary member 2023-06-21 18:23:59 -03:00
Germano Cavalcante 046e5f72e6 Cleanup: Split transform_snap_object.cc into multiple files
Split into:
- transform_snap_object_armature.cc
- transform_snap_object_camera.cc
- transform_snap_object_curve.cc
tmp

tmp
2023-06-21 18:12:00 -03:00
Ray Molenkamp db8569a3ca Merge remote-tracking branch 'origin/blender-v3.6-release' into main 2023-06-21 15:07:17 -06:00
Ray Molenkamp ae35861a64 deps_builder: Fix USD debug build on windows
Backport, was already fixed in 4.0, should have been fixed
in 3.6 instead.
2023-06-21 15:04:07 -06:00
Ray Molenkamp 5e44da1859 deps_builder: python 3.10.12 + openssl 3.0.9 for windows fixes
Small fixes to make it build on windows.
2023-06-21 15:02:45 -06:00
Jacques Lucke 2b4ea3c38a Fix #109209: crash when attributes are propagated to non-first output geometry
This wasn't covered by my other tests because in usually the geometry output
that anonymous attributes are propagated to is the first output, thus the index
was 0. In this case it didn't make it difference whether the `.index_range()` call
was there are not.
2023-06-21 22:36:58 +02:00
Germano Cavalcante f23aac659a Fix multiple snap of Vertex and Edge Perpendicular
Caused by c83e37d354.

The lambda variable is being changed to perpendicular, but the original
value needs to be used for vertex snap.
2023-06-21 17:08:38 -03:00
Hans Goudey cb07162c74 Cleanup: Remove unnecessary C wrappers from Mesh RNA 2023-06-21 15:35:22 -04:00
Bastien Montagne 5cfb9d771f Merge branch 'blender-v3.6-release' 2023-06-21 19:54:29 +02:00
Bastien Montagne 206306405d install_linux_packages: Update python version to 3.10.12.
Re. #104895.
2023-06-21 19:50:30 +02:00
Bastien Montagne c41841da3b install_linux_packages: Add fallback to identify known distro.
Python versions before 3.10 did not have the
`platform.freedesktop_os_release` utils, use the trick based on looking
for distro-specific version files instead as fall-back (same as what was
done in the previous `install_deps.sh` bash script).
2023-06-21 19:50:30 +02:00
Hans Goudey c0632e175c Merge branch 'blender-v3.6-release' 2023-06-21 13:42:33 -04:00
Hans Goudey 00f88babed Fix #109042: Bake from multires different from previous versions
The fix is the same as d622673f4b and 85bd64ece4.
2023-06-21 13:37:25 -04:00
Germano Cavalcante 13beb4ce35 Fix snapping for Curve or Armature failing
Caused by c83e37d354
2023-06-21 14:22:39 -03:00
Brecht Van Lommel 4ed513729f Merge branch 'blender-v3.6-release' into main 2023-06-21 18:55:22 +02:00
Brecht Van Lommel 5c240c9e29 Revert "Fix unnecessary corner edge computation in multires bake"
This reverts commit ef9d9c6856. Actually probably better to leave
this in, since it may be used by normal computation even if seemed to
work ok in tests.
2023-06-21 18:54:28 +02:00
Brecht Van Lommel ef9d9c6856 Fix unnecessary corner edge computation in multires bake
The root of the bug was wrong edges, but it wasn't necessary to compute
corner edges at all and this was unnecessarily added in 16fbadde36.

Ref #109161
2023-06-21 18:49:46 +02:00
Omar Emara 75b519eb89 Fix: Sun Beams shader does not work on Metal
Metal does not support the length function on integer vectors, so
explicitly cast to a float one.
2023-06-21 19:48:33 +03:00
Hans Goudey c9221323f2 Merge branch 'blender-v3.6-release' 2023-06-21 12:42:51 -04:00
Hans Goudey d622673f4b Fix #109161: Baking freeze with invalid edge array
The old subsurf DerivedMesh code creates an edge layer
without initializing it, which makes the proper lazy initialization
of the edge layer later think that it's already finished. To avoid that,
remove the edges when creating the DerivedMesh at first.

Similar to 85bd64ece4
2023-06-21 12:40:36 -04:00
Bastien Montagne b779c6ebe1 Merge branch 'blender-v3.6-release' 2023-06-21 18:11:29 +02:00
Bastien Montagne bca236bfa0 I18n: Updated translations from svn trunk (r6585). 2023-06-21 18:10:01 +02:00
Falk David 2264a32f54 Fix: Missing select menu for GPv3
This change was mistakenly not included in bb041b3f.
2023-06-21 17:28:39 +02:00
Falk David bb041b3f48 Fix #109207: Can't select in gpencil edit mode
This was due to a wrong mapping of tools in the toolbar.

The fix makes sure that the correct selection tools are used for the
old grease pencil objects.
In order to accomplish this properly, the new grease pencil objects
use their own edit mode context.
This way the two objects are cleanly seperated.
2023-06-21 16:49:18 +02:00
Bastien Montagne 738264c7d6 Merge remote-tracking branch 'upstream/blender-v3.6-release'
Conflicts:
	source/blender/editors/uvedit/uvedit_select.cc
2023-06-21 16:47:05 +02:00
Damien Picard 58c6a278d3 I18n: remove context translation from node title
The node title was translated in two steps: first using the
BLT_I18NCONTEXT_ID_NODETREE context, and if that failed, using the
default context.

As far as I could find, the only node using this intentionally is the
Frame node, but its title is only displayed in the Add Menu.

However, at least one node has a bad translation because its name was
extracted independently with the NodeTree context: the compositing
Scale node uses a translation which is only appropriate in a vector
math context.

This commit removes the double translation step. If needed by
translators, a translation context in the node RNA could be introduced
at a later time.

Pull Request: https://projects.blender.org/blender/blender/pulls/108241
2023-06-21 16:43:19 +02:00
Damien Picard 386c653855 I18n: translate new sequence strip names
Newly added sequence strip names can be translated as user data. This
commit adds the appropriate `DATA_()` macros.

Pull Request: https://projects.blender.org/blender/blender/pulls/109058
2023-06-21 16:41:13 +02:00
Germano Cavalcante e9eb8b3cc4 Cleanup: Use BLI_timeit in C++ code
And prefer `std::cout` instead of `printf`.
2023-06-21 11:39:18 -03:00
Damien Picard 037e5787a5 I18n: extract missing enum items for the Select Similar UV operator
The Select Similar UV operator defined multiple enum item arrays, and
returned one depending on current mode in the enum function
uv_select_similar_type_itemf().

The operator prop's enum items used only the vertex items, which
resulted in several items never being extracted because they were
dynamically generated instead of exposed to the RNA.

This commit groups all items in a single array so that they are
exposed, but uses the enum function to filter them.

Issue reported by Satoshi Yamasaki (@SatoshiYamasaki) in #43295.

Pull Request: https://projects.blender.org/blender/blender/pulls/108994
2023-06-21 16:37:54 +02:00
Jacques Lucke ca25fc89bf Merge branch 'blender-v3.6-release' 2023-06-21 16:06:30 +02:00
Jacques Lucke 571aaa0e92 Fix: zero interior band width leads to no volume output
The input only determines the gradient of the volume density at its surface.
Using zero there should not break it.

Pull Request: https://projects.blender.org/blender/blender/pulls/109208
2023-06-21 16:05:47 +02:00
Jacques Lucke 7f2d0ab902 Merge branch 'blender-v3.6-release' 2023-06-21 16:04:40 +02:00
Iliya Katueshenock ff528626f4 Fix #108344: default result buffer must be initially contain values
Caused by 15f464019a.

Now make sure that the `result_buffer` is properly initialized, because
it may be used when trying to blur on an unsupported attribute domain.

Pull Request: https://projects.blender.org/blender/blender/pulls/108347
2023-06-21 16:04:12 +02:00
Iliya Katueshenock 716cc72b96 Fix #108344: default result buffer must be initially contain values
Caused by 15f464019a.

Now make sure that the `result_buffer` is properly initialized, because
it may be used when trying to blur on an unsupported attribute domain.

Pull Request: https://projects.blender.org/blender/blender/pulls/108347
2023-06-21 16:02:20 +02:00
Bastien Montagne 94e6ab6d71 Fix #108923: Serious issues in 'undo_preserve' process of Scene's toolsettings.
By removing the extra complete check/remapping of ID pointers in undo
case, ebb5643e59 merely revealed how broken the 'undo_preserve' code of
Scene was.

It cumulated a flock of issues, all more or less related to ID pointers:
* 'source of truth' should be the _old_ data (toolsettings), not the new
  one, since this is the one kept at the end of the process;
* In some cases, some paint data may exist in one, but not the other
  of the two 'old' and 'new' toolsettings data.
* Since this data is preserved to its latest version accross undos, its
  ID pointers can become completely unrelated to these read from the
  undo memfile, _even when the Scene itself is detected as unchanged_!
  This implies that:
  + undo_preserve code has to be called even when there is no liblinking
    (when the ID is detected as unchanged and re-used 'as-is').
  + Using existing ID addresses to find/validate an ID pointer in
    undo_preserve process is like playing Russian roulette - invalid
    memory access and crash is guaranteed at some point or another.
    Use `session_uuid` value instead to ensure a valid ID pointer is set
    (or null in case none can be found).

NOTE: while these issues also exist in previous releases (including both
latest LTSs), they were hidden by the code later in `setup_app_data`,
preventing any crash to happen. So backporting this fix would be far too
risky for a very minimal benefit imho.
2023-06-21 15:37:39 +02:00
Bastien Montagne b5db6fe5d2 BLO: Add a new API call to find IDs in newly read Main from a session_uuid.
Needed for upcomming fix in Scene's undo_preserve code.
2023-06-21 15:37:39 +02:00
Bastien Montagne 6d1f34a15f IDManagement: libquery: Add macro taking pointer to ID pointers as parameters.
Needed to simplify upcomming fix in Scene undo_preserve code.

NOTE: also renamed 'private' macro parameter names to follow C++ classes
convention (one trailing `_`, instead of one or two leading `_` - the
two `__` leading ones are triggering complains from IDE regarding reserved
identifier names when the relevant macros are used in C++ files).

No expected behavior changes with this commit.
2023-06-21 15:37:39 +02:00
Brecht Van Lommel d9da86dd15 Refactor: move Cycles versioning into regular versioning files
It's confusing to have it separately, and could lead to potential bugs in the
future if there is some versioning depending on the order.

Pull Request: https://projects.blender.org/blender/blender/pulls/109166
2023-06-21 15:20:15 +02:00