Commit Graph

137654 Commits

Author SHA1 Message Date
Falk David
fad85d303f Fix #123328: Onion skinning causes change in opacity for current frame
Toggling the layer onion skinning toggle would affect the opacity
of strokes on the current frame.

This was caused by the `get_visible_frames_for_layer` function. It computes
a `frame_id` for all the keyframes that are not the currenty visible
keyframe. To skip over the currently visible keyframe on the layer,
it just compared the start frame of the keyframe with the current
scene frame. This only works if the current frame is over the keyframe,
but not for any frames after (even if the same keyframe is still visible).

The fix computes the start frame of the keyframe under the current frame
first, and then uses that to compare to the start frame during the iteration
over all keyframes. This makes sure that we skip over the currently visible
keyframe in that layer.

Pull Request: https://projects.blender.org/blender/blender/pulls/123358
2024-06-18 12:29:32 +02:00
YimingWu
a62860229c Cleanup: Remove outdated line art comment
The comment for variable layout is outdated, remove this.
2024-06-18 18:12:40 +08:00
Campbell Barton
d7e9c8cd87 Merge branch 'blender-v4.2-release' 2024-06-18 19:50:42 +10:00
Campbell Barton
08ddd98d73 Merge branch 'blender-v4.2-release' 2024-06-18 19:50:40 +10:00
Campbell Barton
1ed6449c82 Extensions: better error message when already installed
Change the main error messages that happens when we drag and drop an
extension URL.

Ref !123242

Co-authored-by: Dalai Felinto <dalai@blender.org>
2024-06-18 19:49:36 +10:00
Anthony Roberts
794a8f35fa Windows: Update GPU error message on ARM64
This makes it more verbose, and a little clearer that devices prior to 8cx Gen3 are not supported in  >=v4.0. It makes the error message from #113674 more prominent than just being printed to cout.

Spurred by an email I got from someone trying to run blender on a Surface Pro X, and getting the not very helpful (to old devices) error.

Pull Request: https://projects.blender.org/blender/blender/pulls/122732
2024-06-18 11:47:01 +02:00
Campbell Barton
4df945f3af Merge branch 'blender-v4.2-release' 2024-06-18 19:24:06 +10:00
Campbell Barton
09be28794a Fix references to undefined modules/variables, remove unused import 2024-06-18 19:21:15 +10:00
Jeroen Bakker
a39545198a Merge branch 'blender-v4.2-release' 2024-06-18 10:58:26 +02:00
Jeroen Bakker
d13682efa8 Cleanup: Fix spelling in EEVEE
_No response_

Pull Request: https://projects.blender.org/blender/blender/pulls/123355
2024-06-18 10:57:03 +02:00
Jeroen Bakker
b598bd4a6f Merge branch 'blender-v4.2-release' 2024-06-18 10:55:24 +02:00
Jeroen Bakker
c525c0354f EEVEE: Film accumulation workaround for Metal/Intel iGPUs
EEVEE Film accumulation workaround for Metal/Intel iGPUs.

On Metal the Intel iGPUs do not support image read write
on array textures. However this limitation doesn't show
any artifacts when using the compute shader.

This PR is a work around that uses the film_comp shader
to process the film samples, but uses a separate film_copy_frag
shader to read the result and copy them to the frame buffer.

I deliberately didn't include the fix to the film_frag shader
as that would change the read/write resources and could lead
to performance issues for other platforms. Writable resources
are typically slower compared to read only resources.

Some code needed to be duplicated (and not added to `*_lib.glsl`)
as compilers would still raise compilation errors due to imageStore/Load
on incompatible resource access.

The Metal/Intel iGPU is also marked to have limited support as
raytracing and probes still produces big artifacts.

This workaround can be tested on any platform just by setting
`use_compute_ = true` in `Film::sync`

Related to #122361

Pull Request: https://projects.blender.org/blender/blender/pulls/123330
2024-06-18 10:53:53 +02:00
Sybren A. Stüvel
4b2aee0a37 Cleanup: fix compiler warning by removing superfluous parentheses
Change `if ((A == B))` to `if (A == B)` to silence compiler warnings.

No functional changes.
2024-06-18 10:34:33 +02:00
Campbell Barton
8caf042d0f Merge branch 'blender-v4.2-release' 2024-06-18 16:40:42 +10:00
Campbell Barton
f98e422e63 Extensions: support build --split-platforms, generated manifest data
- Add an option to build a separate package for each platform, this is
  useful to produce smaller packages when large wheels are included.

- Add a reserved field: "[build.generated]" to the manifest when
  splitting by platform which overrides the root-level platform
  when it exists.
2024-06-18 16:29:57 +10:00
Campbell Barton
49d8566637 Merge branch 'blender-v4.2-release' 2024-06-18 12:14:51 +10:00
Campbell Barton
cad86f8dec Merge branch 'blender-v4.2-release' 2024-06-18 12:14:48 +10:00
Campbell Barton
c5217b1377 Merge branch 'blender-v4.2-release' 2024-06-18 12:14:46 +10:00
Campbell Barton
dc4c440f9f AUTHORS: add 32 new authors 2024-06-18 12:09:43 +10:00
Campbell Barton
b141365fc2 Cleanup: quiet unused variable warning 2024-06-18 12:09:41 +10:00
Campbell Barton
0554ec7ec7 Cleanup: spelling in comments 2024-06-18 12:09:40 +10:00
Lukas Stockner
25d4d645cd UI: Add Color Temperature unit
The current temperature unit adjusts to Celsius or Fahrenheit based on
unit system, but specifically for color temperatures the convention is
to display them in Kelvin, and it'd be strange to e.g. see 11240°F when
opening the white balance panel.

Therefore, this adds a dedicated Color Temperature unit, and uses it
for the two existing blackbody temperature inputs in shader nodes.

Pull Request: https://projects.blender.org/blender/blender/pulls/123337
2024-06-17 23:50:05 +02:00
Miguel Pozo
0a38a8d56a Merge branch 'blender-v4.2-release' 2024-06-17 19:39:13 +02:00
Miguel Pozo
4093945e9c Cleanup: Use the correct license name
Unlicense is the name of the license, it's not that the code is unlicensed.
2024-06-17 19:37:00 +02:00
Miguel Pozo
50a83d3e0b Fix: BLI_SUBPROCESS_SUPPORT check
Fix compilation on platforms with OpenGL but not BLI_subprocess support.
2024-06-17 19:35:51 +02:00
Clément Foucault
6d375cf7f0 Fix: EEVEE: Wrong thickness for rotated objects
The previous code was using matrix multiplication to
get the local thickness to world thickness.

The correct way is to multiply the local thickness
by the scale of the object (length of each columns
of the object_to_world matrix).
2024-06-17 19:12:24 +02:00
Clément Foucault
b5a9a67dcf Fix: EEVEE: Object holdout not working
This implement the holdout flag by switching to
the holdout case in the shader. This has a few benefits:
- Doesn't recompile the shaders.
- Makes the object infos mandatory (already the case in
  practice)
- Handle transparent materials properly, keeping the
  transparency working.

Fix #123284

Pull Request: https://projects.blender.org/blender/blender/pulls/123315
2024-06-17 19:08:37 +02:00
Hans Goudey
df98aa61bb Nodes: Support hiding labels for string sockets 2024-06-17 13:02:28 -04:00
Miguel Pozo
dde2aa5417 Merge branch 'blender-v4.2-release' 2024-06-17 18:56:59 +02:00
Miguel Pozo
8014b9cbb4 Fix #123183: EEVEE: Optimize velocity geometry buffer
Avoid storing duplicated geometry buffers for instances.

Pull Request: https://projects.blender.org/blender/blender/pulls/123320
2024-06-17 18:55:27 +02:00
Sean Kim
02449b481b Cleanup: Add forward declarations to mesh_brush_common.hh
Pull Request: https://projects.blender.org/blender/blender/pulls/123209
2024-06-17 18:10:02 +02:00
Alaska
08cc73a9bb Fix #123249: Orthographic DOF is influenced by near clip
Fix an issue where the DOF distance in orthographic mode is
specified distance + near clip distance, which can lead to
unpredicable results.

Pull Request: https://projects.blender.org/blender/blender/pulls/123267
2024-06-17 17:45:55 +02:00
Alaska
274da96722 Render: Clamp minimum DOF focus distance
Clamp DOF focus distance to a minimum of 1e-5.
This is to primarily stop focus distances of 0 being used
which would lead to issues in future code changes.

Pull Request: https://projects.blender.org/blender/blender/pulls/123310
2024-06-17 17:42:38 +02:00
Brecht Van Lommel
8ce5c2d8cb Fix: Memory leak in Hydra USD delegate 2024-06-17 16:03:41 +02:00
Hans Goudey
966fdae88b Cleanup: Sculpt: Reduce brush code duplication for applying translations
It's unlikely this part will change in most brushes.

Pull Request: https://projects.blender.org/blender/blender/pulls/123263
2024-06-17 15:54:55 +02:00
Nika Kutsniashvili
2aa388a5f2 UI: Correct alignment for active tool properties
Fix some active tools properties panel that didn't follow Blender's UI guidelines.
Only cosmetic changes, no functionality has changed.

Images and details in the pull request description.

Pull Request: https://projects.blender.org/blender/blender/pulls/122819
2024-06-17 15:38:13 +02:00
Bastien Montagne
dd3a1ec095 Fix (unreported) invalid behaviors when copying an ID in a library.
When copying a local ID into a library, or a linked ID into a different
library, the 'linked' tags would not be properly preserved or set, and
the relative file paths would not be properly remapped.

These issues were not currently exposed (no existing code could trigger
them), but some of these fixes are needed for upcoming refactor of the
partial write code.

NOTE: not very happy with the split in library handling between
`BKE_id_copy_in_lib` and `BKE_libblock_copy_in_lib`, this will have to
be solved at some point.

Pull Request: https://projects.blender.org/blender/blender/pulls/123247
2024-06-17 15:07:20 +02:00
Brecht Van Lommel
cddcef6500 Build: Support building with older ffmpeg precompiled libraries
For more convenient bisecting
2024-06-17 14:13:19 +02:00
Casey Bianco-Davis
3b5cdbad6b GPv3: Add Set Handle Type operator
Adds the ability to change the handle types of points,
this only applies for curves with type bézier.

Pull Request: https://projects.blender.org/blender/blender/pulls/122965
2024-06-17 14:04:04 +02:00
Casey Bianco-Davis
d63b1dd178 GPv3: Add Set Curve Type operator.
Adds the ability to change the curve type of selected strokes.

First steps toward #121574.

Note: Currently there is no way to visually notice any change. This
will be added in subsequent commits.
Pull Request: https://projects.blender.org/blender/blender/pulls/122964
2024-06-17 13:56:13 +02:00
Falk David
10af923eac Grease Pencil: Move GPv3 out of experimental
This removes the experimental flags related to the GPv3 project.

Note that this doesn't remove GPv2 code just yet.
It just exposes GPv3 by default now.

Pull Request: https://projects.blender.org/blender/blender/pulls/122723
2024-06-17 13:50:41 +02:00
Jeroen Bakker
1363eb26ab Merge branch 'blender-v4.2-release' 2024-06-17 13:47:43 +02:00
Miguel Pozo
8e06344576 Merge branch 'blender-v4.2-release' 2024-06-17 13:46:08 +02:00
Jeroen Bakker
832918f9d8 Fix #115344: Generated coordinates for hair psys
When using particle system the generated coordinates where not set.
The reason is that a loose resource handle was created for particle
system that didn't contain enough information to calculate orcos.

This PR will create the object info from its parent object.

Pull Request: https://projects.blender.org/blender/blender/pulls/123307
2024-06-17 13:45:23 +02:00
Miguel Pozo
86bbd2d3a5 Fix #123227 : EEVEE : Ghosting on viewport rendering
Pull Request: https://projects.blender.org/blender/blender/pulls/123308
2024-06-17 13:44:16 +02:00
Clément Foucault
9a6a822dd6 EEVEE-Next: Remove artificial bias
This bias was added when the pixel radius estimation
computation was still broken. This resulted in a shadow
bias way too big in general.

Also fix shadow pixel size being clampped to the wrong
LOD level.

Fix #123295
2024-06-17 12:48:16 +02:00
Bastien Montagne
589ef39ca9 Merge branch 'blender-v4.2-release' 2024-06-17 12:47:30 +02:00
Bastien Montagne
38112fb30d I18N: Updated UI translations from git/weblate repository (bd0b12e7e158). 2024-06-17 12:46:56 +02:00
Miguel Pozo
4f21a4c41b Merge branch 'blender-v4.2-release' 2024-06-17 12:22:57 +02:00
Miguel Pozo
b029608b97 Fix #123285: EEVEE Next: Ray Visibility > Camera
Add the camera visibility to the MaterialKey.
2024-06-17 12:22:30 +02:00