Commit Graph

133338 Commits

Author SHA1 Message Date
Jeroen Bakker
5698fb2049 RenderDoc: Set Capture Title
Adds an option to set the capture title when using renderdoc
`GPU_debug_capture_begin` has an optional `title` parameter to set
the title of the renderdoc capture.

Pull Request: https://projects.blender.org/blender/blender/pulls/118649
2024-02-23 10:57:37 +01:00
Pratik Borhade
0209928647 GPv3: General panel in offset modifier
Same as legacy gp offset modifier

Resolves #118608

Pull Request: https://projects.blender.org/blender/blender/pulls/118647
2024-02-23 10:56:47 +01:00
Philipp Oeser
b492ac723b Merge branch 'blender-v4.1-release' 2024-02-23 09:17:19 +01:00
Philipp Oeser
8b44c62ce7 Fix #118307: Outliner crash with additional constraint on overridden bone
Since `IDOverrideLibraryProperty` apparently stores its rna_path with
string-based collection keys, we have to make sure we also use string-
based keys elsewhere in `OverrideRNAPathTreeBuilder::build_path` and
down the line, otherwise:
- we get duplicate collection entries ("pose.bones[1].constraints" vs.
"pose.bones["Bone.001"].constraints")
- crashes may occur (we are reading on an already freed `TreeElement`
see #118307 for ASAN output)

So now make sure we are using string-based collection keys when we can
so the TreeElements match /and dont get duplicated).

NOTE: the duplication of entries came with 67b92418ee

Pull Request: https://projects.blender.org/blender/blender/pulls/118573
2024-02-23 09:15:37 +01:00
Aras Pranckevicius
2171eef2c4 Merge branch 'blender-v4.1-release' 2024-02-23 07:28:48 +02:00
Aras Pranckevicius
3e232aaac1 Fix #118501: crash opening some projects if Load UI is off
Wrong check for vecscope_rgb array free, introduced in 567455124d
2024-02-23 07:27:57 +02:00
Campbell Barton
3edd6ae69b UI: remove directory button label in extensions & add doc-string 2024-02-23 15:18:02 +11:00
Campbell Barton
92987cbe4a Extensions: user interface improvements
- Remove name from "Add Remote Repository" popup,
  the name is set automatically based on the host-name.
- URL text field is active for new remote repositories,
  the name field is active for local repositories.
- When the custom-path is disabled, show the automatically created
  directory name which is used.
- Use the host-name for the repository name when version patching
  user preferences.

Resolves #118638 design task.
2024-02-23 14:59:30 +11:00
Campbell Barton
c32747319b UI: support UI_ITEM_R_IMMEDIATE all RNA buttons
This was only being checked for key-map entry buttons however this is
useful to enable immediate editing of text fields.
2024-02-23 14:58:08 +11:00
Campbell Barton
291f2ce42f UI: prevent file-selector buttons operating on non-editable properties
While relatively harmless, it's annoying if a user spends time to select
a file only to find the property can't be changed.
2024-02-23 14:58:05 +11:00
Campbell Barton
f726779d76 UI: remove tool-tip message that non-editable properties are internal
Properties that aren't editable aren't necessarily internal,
only use this message for registerable properties.
2024-02-23 14:58:05 +11:00
Campbell Barton
86954de57a RNA: move the read-only extension "directory" to RNA
This allows it to be exposed in the user interface when the
custom-directory is disabled without having to use a label which can't
handle non UTF-8 characters which file-paths can contain.
2024-02-23 14:57:05 +11:00
Campbell Barton
292b39b7f4 Tests: update default library path for batch blendfile loader 2024-02-23 14:57:05 +11:00
Harley Acheson
d379897019 UI: Improvements to Confirmation of Unpack Linked Libraries
A more informative confirmation dialog to confirm that the user wishes
to unpack linked libraries.

Pull Request: https://projects.blender.org/blender/blender/pulls/117154
2024-02-23 02:02:55 +01:00
Ray Molenkamp
b20f29bd04 Merge remote-tracking branch 'origin/blender-v4.1-release' 2024-02-22 17:55:59 -07:00
Hans Goudey
c5d855b497 Cleanup: Use C++ function callbacks for some UI widgets
Use std::function instead of separately allocated arguments and
function pointers. This improves type safety and makes the code less
verbose. It also moves us closer to not having two methods of adding
button callbacks.
2024-02-22 15:53:05 -05:00
Hans Goudey
fdc367f842 Cleanup: Use Vector instead of linked list for data-block sorting utility 2024-02-22 15:34:21 -05:00
Ray Molenkamp
ced066e0c8 make.bat: add additional messaging for the libs download
git on windows is giving no status updates while git lfs
is downloading the libs, causing people to assume its
stuck and interrupt the download. This change adds a
rather large visual message telling people not to do
that.

also it was not respecting people selecting n on the lib
download so some extra messaging has been added there
as well.
2024-02-22 13:09:34 -07:00
Bastien Montagne
01dc67dcc9 Merge branch 'blender-v4.1-release' 2024-02-22 20:07:20 +01:00
Bastien Montagne
ea10be4dd6 install_linux_packages: Add git-lfs to 'build essentials'.
Also define git package for Suse, not sure why it was left unset.
2024-02-22 20:05:22 +01:00
Bastien Montagne
b42dc08452 Merge branch 'blender-v4.1-release' 2024-02-22 19:56:59 +01:00
Sergey Sharybin
987e342023 Update submodule hashes
Point to commit with an update gitignore file.
2024-02-22 19:28:49 +01:00
Sergey Sharybin
0b70ee5861 Merge branch 'blender-v4.1-release' 2024-02-22 19:27:04 +01:00
Bastien Montagne
1dca5af712 Core: Libraries: Fix library parenting when libraries are deleted.
So far, when deleting a library (either explicitely, or through e.g.
relocation), its dependencies would get a `nullptr` parent, and
therefore become 'directly used' libraries.

This commit adds a new util to rebuild the libraries hieararchy, and
calls it when a Library ID is deleted.

NOTE: While logic is somewhat similar to what liboverride resync does to
sort the libraries by indirect levels
(`lib_override_libraries_index_define`), there are some key differences
here, notably the fact that if a library has a valid `parent` pointer,
it is not replaced, even if a 'better' parent (less indirect library)
could be found.
2024-02-22 19:25:59 +01:00
Sergey Sharybin
dc2ec78f1d Update submodule hashes
Point to commit with an update gitignore file.
2024-02-22 19:25:12 +01:00
Brecht Van Lommel
b0b1c55a49 Merge branch 'blender-v4.1-release' 2024-02-22 19:08:48 +01:00
Alaska
56bfd56735 Fix: Cycles incorrect rendering of certain negative strength lights
This fixes an issue where lights that make use of constant negative strength
emission shaders would render with the absolute of their strength.

Pull Request: https://projects.blender.org/blender/blender/pulls/118541
2024-02-22 19:06:22 +01:00
Aras Pranckevicius
db70f08317 Release: update license versions of lzma and fmt 2024-02-22 20:04:45 +02:00
Hans Goudey
c78d668f17 Cleanup: Simplify iteration of corners in face in one case
No need to reconstruct the IndexRange. Also use the more
standard name "corner".
2024-02-22 12:59:06 -05:00
Hans Goudey
caf567e241 Cleanup: Resolve unused variable warning in GHOST EGL code 2024-02-22 12:45:57 -05:00
Ray Molenkamp
95baf98745 Merge remote-tracking branch 'origin/blender-v4.1-release' 2024-02-22 10:42:11 -07:00
Ray Molenkamp
f0bbb0266a make.bat: fix make update not working properly
Git escaped a quote and used all of the cli arguments as the
folder name.

Also fixes:
- Progress on the initial clone so it doesn't appear stuck
- re-detect python after updating libs, so you don't have to run
  make update twice on a fresh clone.
- Hide python not found warning unless the lib folder exists (this
  seemingly got lost in one of the merges)
2024-02-22 10:40:25 -07:00
Sean Kim
41cfb379af Cleanup: Remove unused SCULPT_OT_set_detail_size operator
This PR removes the unused `SCULPT_OT_set_detail_size` operator and related code.

Addresses cleanup of #108111 now that #118403 is merged in.

Pull Request: https://projects.blender.org/blender/blender/pulls/118591
2024-02-22 18:20:16 +01:00
Weizhen Huang
a3f0ff6184 Cycles: make Principled Hair Huang a near- and far-field model
for a camera ray, compute the actual range of the hair width that the
current pixel covers, and only integrate that subset, to prevent a
ribbon-like appearance in close-up looks.
When the hair covers less than one pixel on the screen or when the ray
is not camera ray, the model works the same as before.

Pull Request: https://projects.blender.org/blender/blender/pulls/116094
2024-02-22 18:18:14 +01:00
Weizhen Huang
8a47c6b169 Cleanup: simplify computation of h_to_gamma() in Principled Hair Huang 2024-02-22 18:18:13 +01:00
Weizhen Huang
1906a14cf3 Refactor: pre-compute valid integration interval in Principled Hair Huang
The valid interval from incoming direction was shared between
`...eval_r()` and `...eval_residual()`, so compute that in `...eval()` instead.
The valid interval from outgoing direction was computed for
`...eval_r()` to further reduce the integration interval. This part is
removed because the check `dot(wo, wm) > 0` is relatively cheap inside the loop.
2024-02-22 18:18:13 +01:00
Weizhen Huang
c592fa14f1 Cycles: adjust normal in Principled Hair Huang to be orthogonal to the tangent
The geometry normal of the curve might not be precisely orthogonal to
the tangent due to interpolation. Previously, the tangent was adjusted
to be orthogonal to the normal. However, the normal is linearly
interpolated, which is less accurate than the tangent computed using Catmull-Rom.
This commit keeps the tangent and adjust the normal instead, besides
better accuracy, it ensures a smooth transition when the cross-section
shifts between circular and elliptical.
2024-02-22 18:18:13 +01:00
Brecht Van Lommel
5810b6bcde Icons: Update for now toolbar icons blend file location 2024-02-22 18:04:12 +01:00
Jeroen Bakker
17842d4d40 Fix: CustomData crash in debug builds with empty name
Due to a recent change the name of a layer is passed using a string ref
but the check if it is filled was done by checking if the first char
was zero. This fails as string ref first does the bound checks.

This is fixed by using `!is_empty()`. There might be more places, but this
one fired when loading production files.

Issue introduced by a39e8a4ab9

Pull Request: https://projects.blender.org/blender/blender/pulls/118605
2024-02-22 18:01:06 +01:00
Hans Goudey
77cba3d551 Geometry Nodes: Sample grid node
This simple node finds the values of a volume grid at
positions in the local space used in geometry nodes
evaluation. There are three interpolation modes to
choose how to mix values between neighboring voxels.

For the implementation, first the values are sampled
with the grid's type directly, then implicit type conversions
are used to get the final type. This makes gives us flexibility
in case there aren't exact matches in support between grid
types and Blender types.

Pull Request: https://projects.blender.org/blender/blender/pulls/118397
2024-02-22 17:58:09 +01:00
Hans Goudey
6099252dd4 Instances: Move transforms to attribute
Similar to 2e6223d90f, but potentially 16 times more effective.
The new attribute is named "instance_transform". It isn't displayed in the
spreadsheet since that wouldn't really be useful. This simplifies a lot of
code since it doesn't have to handle transforms specially anymore. But
complexity is added in the store named attribute node and attribute input
node to keep the old "position" attribute working for compatibility.

Pull Request: https://projects.blender.org/blender/blender/pulls/118531
2024-02-22 17:57:09 +01:00
Richard Antalik
d4925b9775 Cleanup: Refactor VSE movie loading
Original code was very confusing, with seemingly indecisive logic.
I hope, that it is less confusing now, however there is still some
indecisiveness present. This is because multiview configuration may not
be correct, so there must be fallback and only some multiview settings
require loading of multiple files. Perhaps be better wording could be
used for `open_anim_file_multiview()`.
Fortunately this is now expressed within 5 lines of code instead of 100.

Further this can be improved by checking if the file exists, since now
VSE crashes when right eye image is missing, because loading code
does not try to actually open the file.

Pull Request: https://projects.blender.org/blender/blender/pulls/118580
2024-02-22 17:48:40 +01:00
Weizhen Huang
1d8ec32473 Fix Cycles area light using MIS when the spread is zero
area light with zero spread was introduced in bf18032977. Such paths can
only be sampled with NEE, so MIS should not be used.
This fixes the discrepancy when Direct Light Sampling is set to MIS or NEE.

Pull Request: https://projects.blender.org/blender/blender/pulls/118584
2024-02-22 17:10:46 +01:00
Sergey Sharybin
3aa6c16171 Merge branch 'blender-v4.1-release' 2024-02-22 16:52:32 +01:00
Sergey Sharybin
ffd68db5f4 Fix file name being stored in the view layers CMakeLists 2024-02-22 16:51:46 +01:00
Brecht Van Lommel
ba59f6a26e Tests: Update microfacet hair reference render for changes 2024-02-22 16:50:51 +01:00
Falk David
6bc2f6c6d5 Merge branch 'blender-v4.1-release' 2024-02-22 16:44:30 +01:00
Falk David
c7f2a0567e Cleanup: Rename ensure_git_lfs_hooks to ensure_git_lfs
Since the function no longer adds hooks and skips the process deliberatly, the function name doesn't make sense.
Rename to `ensure_git_lfs`.

Pull Request: https://projects.blender.org/blender/blender/pulls/118626
2024-02-22 16:43:33 +01:00
Sergey Sharybin
1e88fd6050 Merge branch 'blender-v4.1-release' 2024-02-22 16:08:14 +01:00
Sergey Sharybin
6e26ee822b Tweak mnake update's LFS installation further
Ensure the filters are installed, but not the hooks.
Should fix the original issue of developers using custom
hooks in the repository.
2024-02-22 16:06:11 +01:00