Commit Graph

150077 Commits

Author SHA1 Message Date
Jeroen Bakker
975dcea23f OpenGL: Enable High Quality Normals for Legacy AMD Drivers
On Legacy AMD devices EEVEE doesn't render any geometry. During testing
we found that it was based on reading normal attribute. Further testing
it was detected that enabling the high quality normals would solve the
rendering.

This is a known issue on legacy AMD drivers. This PR updates the check
to enable the high quality normals workaround for the latest known AMD
legacy drivers (22.6.1/21.Q1.2). Both drivers still have this issue.

Pull Request: https://projects.blender.org/blender/blender/pulls/126483
2024-08-19 09:42:52 +02:00
Campbell Barton
976062c771 Cleanup: use prefix comments before struct members 2024-08-19 11:37:20 +10:00
Campbell Barton
8a7ff41a85 Cleanup: wrap long lines in Python scripts 2024-08-19 10:48:07 +10:00
Campbell Barton
fe6ab4f344 PyDoc: corrections to formatting and resolve warnings
Use RST formatting for doc-strings used in Python API docs
as well as minor corrections, also add links for foreach_get/set.
2024-08-19 10:48:06 +10:00
Harley Acheson
7c68ac258f UI: File Browser Offline and Alias State Icon Position
#125625 moved the File Browser Thumbnail type icon location from the
bottom-left of the thumbnail extent to the bottom-left of the item
bounds. This does the same for the indication of offline and for
shortcut. This adds a new icon for shortcut instead of current use of
ICON_LOOP_FORWARDS, which doesn't look right. The new icon looks like
the Mac Alias arrow, but this also works fine for other platforms.

Pull Request: https://projects.blender.org/blender/blender/pulls/126469
2024-08-18 22:11:53 +02:00
Hans Goudey
b2368b7eb0 Revert "Refactor: Sculpt: Move original position restore to brush deform step"
This reverts commit 93054f9a0e.

I had forgotten the reason for this separate "restore" step before the brush
deform evaluation was because multiple symmetry steps can be processed in the
same BVH node, in which case we can't just overwrite the values from the last
symmetry step.
Fixes #126445.
2024-08-18 15:09:58 -04:00
Clément FOUCAULT
b919887682 DRW: Add assertions for unsupported values
The `draw::Pass` types have different capabilities.
Custom ID and primitive expansion count are now
checked before command recording.
2024-08-18 15:39:06 +02:00
Jesse Yurkovich
2e395d2aac USD: Add test to verify Shape prim import
Verifies all currently supported USD Shape prim types are successfully
imported. Each prim has time sample data authored so the presence of a
Mesh Sequence Cache modifier is also checked.

Pull Request: https://projects.blender.org/blender/blender/pulls/126449
2024-08-18 03:09:57 +02:00
Clément FOUCAULT
7de383ffc6 Fix: Overlay-Next: Volume outline crashing
Caused by using the wrong pass to create the drawcall.
2024-08-17 13:50:53 +02:00
Jacques Lucke
cc01e8a74e Tools: support reference data in coverage report
This adds initial support for showing the difference between old and new coverage
data. The difference is only shown in index.html currently. This is mainly useful
when adding new tests right now, to see the impact.

To use this, rename the `coverage/analysis` folder in the build directory to
`reference`. It will automatically be used by the report script if that reference
folder exists.
2024-08-17 13:36:42 +02:00
Jacques Lucke
2c52852116 Tests: add initial grease pencil geometry nodes test 2024-08-17 13:31:51 +02:00
Jacques Lucke
daeaac0b1c Fix: Tools: correct default open path in coverage report summary
The `/blender` prefix was specific to my local setup and may be different
for others.
2024-08-17 11:33:00 +02:00
Jacques Lucke
5819ba40f0 Fix: Tools: fix coverage summary page when open paths don't exist anymore 2024-08-17 11:29:41 +02:00
Jacques Lucke
20bc346cf0 Fix: remove unnecessary manual user count
`tree_sharing_info_` is automatically user-counted now.
2024-08-17 11:21:55 +02:00
Jonas Holzman
6e72f00d4e Fix: UI: Wrong single editor window titles due to unset area sub-spacetype
This PR moves new area space subtype update to ED_area_newspace so that
it is applied right after a new space is initialized. This is currently
done in rna_Area_ui_type_update, but after rna_Area_type_update.
Without the subtype set this can result in an incorrect titling of
single-area windows.

Pull Request: https://projects.blender.org/blender/blender/pulls/126224
2024-08-17 01:35:52 +02:00
Jacques Lucke
e0b5654655 Cleanup: improve check for whether object has geometry set instances
This speeds up the file from #126391 from 3.2fps to 3.3fps.
2024-08-17 00:58:37 +02:00
Jacques Lucke
5358d1b09a Depsgraph: avoid checking for evaluated object in draw code
This increases playback performance from 2.9fps to 3.2fps in the test file from #126391.

The check is unnecessary in draw code, because we know that the depsgraph
finished evaluation before. These checks were introduced to handle dependency
cycles during depsgraph evaluation.

At some point it may be nice to look into making these checks cheaper to avoid having
to use the unchecked version for performance reasons.
2024-08-17 00:41:31 +02:00
Jacques Lucke
f21a25489f Volumes: speedup extracting dense voxel values
Extract dense voxels if a very memory bandwidth limited task. I get a 10-20%
speedup be reducing the number of threads doing it at the same time.
2024-08-17 00:25:36 +02:00
Jacques Lucke
aa3549f590 Fix: correct place where simplify level is taken into account for volumes
Otherwise it did not take the current frame into account properly when
the volume is a sequence.
2024-08-16 23:40:25 +02:00
Jacques Lucke
50a6be7169 Tools: add frame filter for task isolation 2024-08-16 23:36:20 +02:00
Harley Acheson
aa78d43a05 UI: Multicolor Autokeying Indicator
Show the autokeying indicator (record button) on the Timeline header in
red when enabled. With a white outline on dark theme, or with a black
outline on light theme. The red color is user changeable.

Pull Request: https://projects.blender.org/blender/blender/pulls/126344
2024-08-16 23:16:40 +02:00
Jesse Yurkovich
6932351e23 USD: Add test data for upcoming PointCloud and Shape tests 2024-08-16 13:25:15 -07:00
Harley Acheson
b04c0da6f0 UI: Increase the Editor Edge Move Zone Size
This increases the hit size for the zone that allows resizing editors.
By approximately one more pixel on each side. This should make sizing
a little bit easier, especially with pens. Corner zone and region
reveal zone take precedence so I haven't found any time this causes any
interference.

Pull Request: https://projects.blender.org/blender/blender/pulls/126376
2024-08-16 21:05:38 +02:00
casey bianco-davis
8f386cd308 GPv3: Edit Mode: "Scale Thickness" option
This implements the `use_scale_thickness` setting for GPv3.

Pull Request: https://projects.blender.org/blender/blender/pulls/126213
2024-08-16 19:50:34 +02:00
Sergey Sharybin
359caa3710 Fix #126408: macOS ARM Cycles performance regression
Update macOS sse2neon library to the newer version

Ref #126413
2024-08-16 18:45:08 +02:00
Sergey Sharybin
abb3f2b0eb Build: Upgrade sse2neon
The previous update introduced a regression #126408

This update pulls a fix committed to the upstream:
  https://github.com/DLTcollab/sse2neon/pull/646

Pull Request: https://projects.blender.org/blender/blender/pulls/126413
2024-08-16 18:35:17 +02:00
Jacques Lucke
4493842fe7 Cleanup: use ImplicitSharingPtr for volume tree sharing info
This avoids manual user management.
2024-08-16 17:45:25 +02:00
Jacques Lucke
cebffdc060 Cleanup: simplify using ImplicitSharingPtr for raw ImplicitSharingInfo 2024-08-16 17:36:29 +02:00
Jacques Lucke
eb8fb9e5a4 BLI: improve api for getting memory count
This introduces `MemoryCount` which can be used across multiple
`MemoryCounter`. Generally, `MemoryCount` is expected to live
longer (e.g. over the entire life-time of a cache), while `MemoryCounter`
is expected to only exists when actually counting the memory.
2024-08-16 17:20:19 +02:00
Jacques Lucke
37ca8347a2 BLI: support smart pointer for weak implicit sharing pointer
Previously, one always had to do manual user management for weak users.
2024-08-16 17:20:19 +02:00
Jacques Lucke
e40c3e5662 Geometry Nodes: add memory counting for bake state 2024-08-16 17:20:19 +02:00
Jacques Lucke
42ad0a754a Fix: Tools: add missing display hint 2024-08-16 17:20:19 +02:00
Hans Goudey
4b71496f56 Fix #120145: mesh_new_from_object crash with evaluated object type change
When the preserve_all_data_layers argument was passed, the object
would be reevaluated, assuming the type of the original object data.
However, the evaluated object type can change compared to the
original, so to reevaluate the original mesh we need to check that
the original object was also a mesh object.

Pull Request: https://projects.blender.org/blender/blender/pulls/126407
2024-08-16 16:56:18 +02:00
Christoph Lendenfeld
ff0c097fa1 Fix #126140: Cycle aware keying not working
The issue was that the code path for layered actions never hit the
function `remap_cyclic_keyframe_location`.

The solution is to move that logic into `insert_vert_fcurve`.
My reason for why this is the correct solution is that
the remapping happens on a per FCurve basis, so it should be within `fcurve.cc`.
Doing so ensures that the layered actions also hit that code.

Pull Request: https://projects.blender.org/blender/blender/pulls/126399
2024-08-16 16:43:17 +02:00
Omar Emara
5e88a1466c Compositor: Support Viewer node in new CPU compositor
This patch supports the viewer node in the new CPU compositor. To do
that, the context viewer output mechanism was refactored to allow CPU
storage by utilizing the result class as opposed to a GPU texture.
2024-08-16 16:40:43 +03:00
Lorenzo Pierfederici
01d5581506 WM: Mark compatibility issues as fixed on save_as
The reasoning in the comment applies to "Save as..." as well, because
the destination file becomes the active one and opened data and active
file on disk match.

When saving a copy the active file is not updated, so existing
compatibility issues would remain.

Pull Request: https://projects.blender.org/blender/blender/pulls/126266
2024-08-16 15:05:51 +02:00
Lorenzo Pierfederici
d8ec92ed0b WM: Don't notify WM when file is saved as copy
When saving a copy, the active file remains unchanged so the "saved"
status and window title shouldn't be updated.
2024-08-16 15:05:47 +02:00
Bastien Montagne
5d0894f06a Packedfile reading: report filepath of missing packed file.
Can be useful info for users to rebuild missing data.
2024-08-16 15:04:21 +02:00
Bastien Montagne
7597f494b9 Fix #126147: Crash on reading blendfile with missing packed data.
Over the year, changes in how image packedfiles were handled broke the
fallback case of missing packed data in a few places, this commit fixes
proper cleanup of invalid packed files in the Image's list of
packedfiles.

In addition, also do not create inplicit sharing info when the read data
is `nullptr`.
2024-08-16 15:04:21 +02:00
Omar Emara
75cc1e4a15 Compositor: Add utility for 2D parallel for 2024-08-16 16:03:16 +03:00
Campbell Barton
92f633e7cb Fix #105895: tiny mouse cursor with 125% fractional scaling on Wayland
This only impacted configurations that don't include large cursor sizes
which isn't so common.

However when it does happen the cursors are small enough that they're
difficult to see.
2024-08-16 22:59:41 +10:00
Omar Emara
912284cfa3 Fix: GPU calls in CPU compositor
This patch removes an incorrect GPU call that shouldn't happen in the
CPU compositor, otherwise, it will cause a crash due to a missing
context.
2024-08-16 15:57:15 +03:00
Omar Emara
a54cf472c3 Compositor: Add utils for accessing pixel data 2024-08-16 15:55:29 +03:00
Hans Goudey
a4d94ee5d5 Fix #125565: Clear Parent & Keep Transform doesn't work in redo panel
The second time the operator ran without a depdency graph
evaluation happening for another reason, the object's evaluated
transform matrices weren't calculated. The fix is to make sure the
depsgraph is evaluated when the operator is executed.
2024-08-16 08:50:22 -04:00
Pratik Borhade
d1f0d71b54 GPv3: Few changes to invert weight operator
Cancel operator when active vgroup is locked.
Use new poll function to check if vgroup exists, otherwise grey out the
operator.
And some cleanup.
This addresses the points from !126275

Pull Request: https://projects.blender.org/blender/blender/pulls/126313
2024-08-16 13:18:26 +02:00
Christoph Lendenfeld
7547f1e59a Fix #126128: Possible to select invisible keys in the Graph Editor
The issue was that the animation filtering code for layered actions did not take
the `ANIMFILTER_FOREDIT` and `ANIMFILTER_SELEDIT` flags into account.

This also fixes another issue where it was possible to select and edit keys
on locked fcurves.

Pull Request: https://projects.blender.org/blender/blender/pulls/126373
2024-08-16 12:23:23 +02:00
Sergey Sharybin
c5008d2de9 Fix #124679: Certain OSL scripts have artifacts in the world shader on Windows
Pull Request: https://projects.blender.org/blender/blender/pulls/126374
2024-08-16 10:35:32 +02:00
Campbell Barton
f9a16c4cdb Fix failure to remove libraries when removing wheels
Disabling wheels wasn't removing the modules "*.libs" directories.
2024-08-16 18:12:57 +10:00
Campbell Barton
58c7237bbf Fix #125958: Disabling/uninstalling extensions doesn't remove wheels
Cleaning up wheels was skipped when there were no enabled extensions.

Now this is only skipped when there are no extensions on startup.
2024-08-16 18:12:57 +10:00
Campbell Barton
6e823d3f6f CMake: library path reference for PLATFORM_ENV_BUILD unix/macos (#2)
Correct fix from [0].

The previous fix seemed to work but on further testing the environment
wasn't properly expanded. Using "$$" prefix resolves the problem.

[0]: b0ec4bba70
2024-08-16 17:13:05 +10:00