Commit Graph

143995 Commits

Author SHA1 Message Date
Thomas Dinges
79220f5728 Release: Update copyright.txt pointing to new license.md 2024-11-28 12:43:47 +01:00
Clément Foucault
909b74e91f Fix: GPU: Assert due to new GPU requirements regarding wide lines
The formats was not using the correct attribute type.

Fixes assert in graph drawing and potential assert in cursor drawing
Fixes assert in sequencer and file browser
2024-11-28 12:42:17 +01:00
Raphael Langerhorst
f662caf722 Add RISCV CPU architecture support to build config
Remove assert statement from make_update.py, making it ready for any
architecture.

Add riscv 32, 64 and 128 bit cpu architecture with little/big endian
to Blender's BLI_build_config.h and Libmv's build_config.h

Tested (to compile) on riscv64 little endian machine.

Pull Request: https://projects.blender.org/blender/blender/pulls/130920
2024-11-28 12:37:26 +01:00
Falk David
9e28809695 Fix #130309: Grease Pencil: Smooth doesn't use correct smooth settings
The issue was that when the smooth operation is invoked using shift,
we create a smooth operation for the currently active brush (which
is probably not a smooth brush).

This fixes the issue by using the "Smooth" brush from the essentials
library when the smooth operations is invoked temporarily.

Pull Request: https://projects.blender.org/blender/blender/pulls/130963
2024-11-28 12:23:23 +01:00
Jeroen Bakker
faf2c6f0ca Vulkan: Add method to query debug group of node
When debugging render graph the debug group name can narrow down the
place where a node originates from. This PR adds a function to retrieve
the full debug group name of a specific node.

Pull Request: https://projects.blender.org/blender/blender/pulls/131081
2024-11-28 12:00:21 +01:00
Clément Foucault
601de8bfcb Fix: GPU: Assert due to new GPU requirements regarding wide lines
The formats was not using the correct attribute type.
2024-11-28 11:56:49 +01:00
Falk David
8b233f36db Fix: Grease Pencil: Crash in curves_merge_by_distance for cyclic curves
The issue was that the size of `distances_along_curve` was wrong for
cyclic curves. The fix increases the size by one for cyclic curves to
account for the last segment length.
2024-11-28 11:42:09 +01:00
Campbell Barton
76f9a08963 Fix failure to reinstall an extension uninstalling the extension
When an extension could could be removed but it's directory could be
renamed, the install operation would fail anyway.

Resolve by completing the installation when the directory can be moved.

Report as part of #129884.
2024-11-28 21:28:30 +11:00
Thomas Dinges
b93aa51a6e Tools: Update names after module split
* Add Triaging and Development management modules as well
* Only print modules that have open bugs
2024-11-28 10:59:08 +01:00
Omar Emara
a9436b04b8 Fix: Compositor: Crash using Keying node in new CPU compositor
The Keying node crashes in the new CPU compositor because it was writing
to an output that shouldn't be computed and is thus unallocated.
2024-11-28 10:58:14 +02:00
Julien Duroure
373191ff2a glTF exporter: fix KHR_animation_pointer to use the right material when texCoord
We need to store the last version of the material, when all additional data are set
2024-11-28 09:41:35 +01:00
Julien Duroure
428ec6c1e3 glTF exporter: Fix crash when animation on not used material
(And when exporting using KHR_animation_pointer)
2024-11-28 09:38:28 +01:00
Julien Duroure
7ea11a4724 glTF exporter: Always bake scene animation
This way, we can handle drivers animation
2024-11-28 09:35:38 +01:00
Julien Duroure
f7a2d0095e glTF exporter: Fix debug logging
Set INFO level if user set debug to whatever value not used to set logging level
2024-11-28 09:33:22 +01:00
Julien Duroure
ba737a496c glTF exporter: Fix armature object keep channel option
When exporting bone animation, we also check animation on armature object itself
This check was not take into account what channel are really animated
2024-11-28 09:31:23 +01:00
Julien Duroure
5997886662 glTF importer: add option to not select created objects
So, when this operator is called by other scripts in mass, we avoid performance issue
2024-11-28 09:27:29 +01:00
Julien Duroure
f8766c5542 glTF exporter: UI fixes - disable option when not available
Some combination of options are not possible, so option should be grayed
2024-11-28 09:23:14 +01:00
Julien Duroure
dbb670c6d1 glTF importer: add option to import scene extras or not
As user may want to not overwritten them
2024-11-28 09:21:19 +01:00
Julien Duroure
90e09b93b5 glTF exporter: Fix crash with extra channel 2024-11-28 09:19:41 +01:00
Julien Duroure
14302f6af7 glTF exporter: Fix crash when 'remove armature object' + 'export only def bones'
This check is done before the filter of non deformation bone.
So when we want to get this list, as it's cached, we get the list with non deformation bones, so try to access a bone that is filtered

Additional bug when we want to export only DEF bones :
the check is done on all bones, not only deformation bones, if we want to get only def bones.
So having at root a DEF and a nonDEF bone => Check will failed and said we can't remove armature

Solution: When checking if we can remove armature, indicate that we don't want to cache the result
2024-11-28 09:16:26 +01:00
Alaska
31bfcff4ea Tests: Add Cycles tests for new volumetric scatter phase functions
Blender 4.3 added new volumetric scatter phase functions to Cycles.
This commit adds tests for each of the new phase functions.

Ref: blender/blender@0315eae536
Ref: blender/blender#123012
Ref: blender/blender-test-data!25

Pull Request: https://projects.blender.org/blender/blender/pulls/130894
2024-11-28 06:59:23 +01:00
Aaron Carlisle
7993020085 Docs: Update Sphinx & Website Theme
This now matches the versions used for the user manual.
2024-11-27 22:40:40 -05:00
Campbell Barton
1865de1c73 Fix #129926: Crash with Python 3.12 & Manta flow
Python 3.12 no longer supports calls to PyImport_AppendInittab
once initialized.

The call was redundant as Blender's `bpy_internal_modules` already
includes the "manta" module.

Resolve by disabling the call when Python's lifecycle isn't being
managed by manta-flow.
2024-11-28 12:04:45 +11:00
Campbell Barton
4c34b25f56 Cleanup: quiet undeclared function warnings 2024-11-28 10:27:24 +11:00
Campbell Barton
979ad4cc9c Cleanup: remove redundant function 2024-11-28 10:20:59 +11:00
Campbell Barton
7f26812523 Fix bone duplication failing to update it's sub-targets
Regression in [0] attempted to access EditBones from the Bone list,
causing bone constraints fail to reference the sub-targets when
the bone and its target were both duplicated.

[0]: f025ff81fc
2024-11-28 10:13:06 +11:00
Harley Acheson
0193579e90 UI: Win32 - Clipboard Image Paste from File Path
On the Windows platform allow pasting an image into the Image Editor
based on a filepath in the clipboard. For example, selecting "copy" on
the context menu in the file system. This checks for CF_HDROP format
and should work for all image formats we support.

Pull Request: https://projects.blender.org/blender/blender/pulls/127782
2024-11-27 23:55:18 +01:00
Sean Kim
1af839d419 Fix #130707: Weight paint gradient tool doesnt fill behind start point
See blender/blender-assets!15 for the actual asset file change.

As part of the brush asset project, various weight paint brushes had
their falloff curve changed. This had the unintended effect of changing
the behavior of the gradient tool, as it shares the currently active
brush's settings.

This behavior is unintuitive and not well documented, as an interim fix,
the bundled assets were reverted.

Pull Request: https://projects.blender.org/blender/blender/pulls/131058
2024-11-27 22:46:49 +01:00
Sean Kim
be62107fbd Assets: Update asset repository hash for essentials library updates
Includes blender/blender-assets@360e2172

Pull Request: https://projects.blender.org/blender/blender/pulls/131057
2024-11-27 22:18:03 +01:00
Aras Pranckevicius
3d7359a38f Fix #130969: OBJ import shading artifacts when file contains zero-area faces
When OBJ file contains vertex normals, this can in some cases confuse
the custom loop normals code inside Blender. Since it does not simply
just use custom normals, but rather projects them into "lnor space".
But that "lnor space" calculation can go haywire sometimes, when
degenerate faces are present in the input.

Mark zero-area faces as "sharp" before doing custom normals. This will
make them not try to share the "smooth fan" lnor space with other faces,
and things will look correct.

Previously, OBJ importer was (wrongly) always setting all faces
as "sharp", which avoided this problem, but caused other issues.

Pull Request: https://projects.blender.org/blender/blender/pulls/131041
2024-11-27 22:03:15 +01:00
Miguel Pozo
1105f2573e Fix #130846: Workbench: X-Ray incoming vector
Regression from
9396c8f388
2024-11-27 21:26:52 +01:00
Sean Kim
a820e2d393 Fix: Clone brush missing from image texture paint
Missed in 3798852071

Pull Request: https://projects.blender.org/blender/blender/pulls/131005
2024-11-27 21:25:21 +01:00
Sean Kim
4c1cb3be9d Fix: Filter Mesh crash when using operator panel
`CTX_data_ensure_evaluated_depsgraph` ultimately ends up freeing the PBVH
meaning that any associated data still held may be a use-after-free error.

Pull Request: https://projects.blender.org/blender/blender/pulls/131011
2024-11-27 20:57:23 +01:00
Miguel Pozo
a39bec7197 Fix: Overlay-Next: GP Points/Segments in edit modes
The previous code didn't support disabling them.
This is a copy of the Legacy behavior.
2024-11-27 20:52:49 +01:00
Sean Kim
b53a9a671d Fix #130783: Image editor tools do not set active brush
Missed in a38c96b92c

Pull Request: https://projects.blender.org/blender/blender/pulls/130946
2024-11-27 20:50:30 +01:00
Miguel Pozo
6e6b9abf55 Fix: Overlay-Next: GP Vertex paint points 2024-11-27 20:08:28 +01:00
Miguel Pozo
83dca75cdf Fix #130815: Overlay-Next: Disabled overlays still visible 2024-11-27 20:07:15 +01:00
Julian Eisel
a66a5a3f50 Fix #130882: Asset shelf filter by active tool option doesn't redraw 2024-11-27 18:53:05 +01:00
Clément Foucault
f08c2b8aa1 Fix: Overlay-Next: Wireframe display conflicting with edit cage 2024-11-27 18:45:31 +01:00
Omar Emara
292ad6b00e Compositor: Implement Keying node for new CPU compositor
Reference #125968.
2024-11-27 19:28:16 +02:00
Omar Emara
0efb0ce48e Compositor: Implement Dilate node for new CPU compositor
Reference #125968.
2024-11-27 19:28:16 +02:00
Omar Emara
b43c36e801 Compositor: Implement Morphological Distance Feather algorithm for CPU
Reference #125968.
2024-11-27 19:28:16 +02:00
Omar Emara
32186ca908 Compositor: Implement Morphological Distance algorithm for CPU
Reference #125968.
2024-11-27 19:28:16 +02:00
Omar Emara
939242b100 Compositor: Implement Morphological Distance Feather Weights to CPU
Reference #125968.
2024-11-27 19:28:16 +02:00
Omar Emara
8f77e0d7fe Fix: Zero division in Dilate node 2024-11-27 19:28:16 +02:00
Clément Foucault
00a8d006fe GPU: Move Polyline shader to primitive expansion
This port is not so straightforward.

This shader is used in different configurations and is
available to python bindings. So we need to keep
compatibility with different attributes configurations.

This is why attributes are loaded per component and a
uniform sets the length of the component.

Since this shader can be used from both the imm and batch
API, we need to inject some workarounds to bind the buffers
correctly.

The end result is still less versatile than the previous
metal workaround (i.e.: more attribute fetch mode supported),
but it is also way less code.

### Limitations:
The new shader has some limitation:
- Both `color` and `pos` attributes need to be `F32`.
- Each attribute needs to be 4byte aligned.
- Fetch type needs to be `GPU_FETCH_FLOAT`.
- Primitive type needs to be `GPU_PRIM_LINES`, `GPU_PRIM_LINE_STRIP` or `GPU_PRIM_LINE_LOOP`.
- If drawing using an index buffer, it must contain no primitive restart.

Rel #127493

Co-authored-by: Jeroen Bakker <jeroen@blender.org>
Pull Request: https://projects.blender.org/blender/blender/pulls/129315
2024-11-27 17:37:04 +01:00
Aras Pranckevicius
611940805e Fix #107493, #98480: video rotation metadata is not read
Videos files recorded on most phones were coming in sideways; files
recorded on some laptop cameras were coming in upside down. In both
cases the display_matrix metadata of the video stream was not applied.

This required changing internal container format of movie proxies to
be MP4 instead of AVI, since AVI does not support rotation metadata.
File extension kept at ".avi" to not disturb existing expectations.

It might be better to "bake" rotation into proxies while building them,
but right now we do not have a trivial way of doing that.

Note that this is a potential behavior change; if someone
already had manually rotated video strips, they would have
to undo that rotation now.

Pull Request: https://projects.blender.org/blender/blender/pulls/130455
2024-11-27 17:08:37 +01:00
Alaska
0ab0f41c1e Tests: Add render tests for shadow linking on point clouds and curves
Having a test like this was found to be useful during
blender/blender!125803

And a test like this will be useful in case of refactors or in the case
HIP-RT adds native point cloud support.

Ref: blender/blender-test-data!19
Ref: blender/blender-test-data!21
Ref: blender/blender#123012
Pull Request: https://projects.blender.org/blender/blender/pulls/130504
2024-11-27 16:13:33 +01:00
Philipp Oeser
5aa95941d1 Fix #130998: Crash changing Color Palette in Object/Edit/Pose modes
Caused by 7b0ea0f1b4

By default, Color Palettes are only drawn in the UI in the context of
**painting**. UI button code then tries to update an appropriate brush
from edits to the palette.

In the report though, a palette was created and displayed via python,
making changes in Object/Edit/Pose would then crash.

So a valid `Paint` and `Brush` were assumed. `Paint` was already checked
for in a324a19f1b, but since 7b0ea0f1b4, `Paint`(if we actually have
it, e.g.from `ImagePaintSettings` [see a324a19f1b]) only has its
`brush` set once we enter texturepaint once.

Solved by checking we have a valid Brush in corresponding UI code to
begin with.

Pull Request: https://projects.blender.org/blender/blender/pulls/131031
2024-11-27 15:41:26 +01:00
Hans Goudey
953c4f1599 Cleanup: Remove references to legacy Grease Pencil object
These are converted on startup to the new type. There are still
some references left, mostly where it looked like there still needs
to be changes to properly deal with the new object type.
2024-11-27 09:17:16 -05:00