Commit Graph

1154 Commits

Author SHA1 Message Date
Sergey Sharybin 987e342023 Update submodule hashes
Point to commit with an update gitignore file.
2024-02-22 19:28:49 +01:00
Ray Molenkamp 95baf98745 Merge remote-tracking branch 'origin/blender-v4.1-release' 2024-02-22 10:42:11 -07:00
Brecht Van Lommel 5810b6bcde Icons: Update for now toolbar icons blend file location 2024-02-22 18:04:12 +01:00
Sergey Sharybin a3124b1b48 Point submodules to the main branch
Also update submodule hashes to point to the main branch of the submodules.

Pull Request: https://projects.blender.org/blender/blender/pulls/118612
2024-02-22 13:56:33 +01:00
Sergey Sharybin 396348eea9 Merge branch 'blender-v4.1-release' 2024-02-22 13:51:48 +01:00
Sergey Sharybin 3dc832a904 Switch SVN to Git submodules using Git-LFS
This change makes it so build system and update utilities for Blender builds
are using pre-compiled libraries and other resources attached as Git modules
instead of using checkout of SVN repositories in the parent folder.

The directory layout:
```
  * release/datafiles/
    * assets/        -> blender-assets.git
      * publish/
      * ...
      * README.txt
  * lib/
    * darwin_x64/    -> lib-darwin_x64.git
    * darwin_arm64/  -> lib-darwin_arm64.git
    * linux_x64/     -> lib-linux_x64.git
    * windows_x64/   -> lib-windows_x64.git
  * tests/
    * data/         -> blender-test-data.git
```

The changes about configuring the actual Git sub-modules are not included
into this patch, as those require repository to actually exist before it
can be used.

The assets submodule is enabled by default, and the rest of them are
disabled. This means that if someone runs `git submodule update --init`
they will not get heavy libraries. The platform-specific and tests
related submodules are enabled when using `make update` or `make test`.

All the submodules are tracked: this means that when new commits are
done to the submodule, the blender.git repository is to be updated to
point them to the new hash. This causes some extra manual work, but it
allows to more easily update Blender and its dependencies to known good
state when performing operations like bisect.

Ref #108978

Pull Request: https://projects.blender.org/blender/blender/pulls/117946
2024-02-22 13:50:55 +01:00
Brecht Van Lommel 0f2064bc3b Revert changes from main commits that were merged into blender-v4.1-release
The last good commit was 4bf6a2e564.
2024-02-19 15:59:59 +01:00
Campbell Barton 2119d271e0 Cleanup: remove "-noaudio" argument in background mode
This is no longer needed as background mode implies -noaudio.
2024-02-14 00:13:38 +11:00
Hans Goudey 91e54fdd83 Cleanup: Move BLO_readfile.h to C++
I added a new BLO_userdef_default.h header to contain declarations of
two global variables that are still defined in C files. Use of designated
initializers for large structs make those files harder to change.
Arguably this is a better header for them anyway.

Pull Request: https://projects.blender.org/blender/blender/pulls/118015
2024-02-09 13:41:30 +01:00
Pratik Borhade 8250502b77 UI: Merge Spin and spin duplicate tools
Both tools calls the same operator, only difference is "dupli" bool
property value. So expose the property in tool settings and remove the
spin duplicate tool

Resolves #98094

Pull Request: https://projects.blender.org/blender/blender/pulls/117880
2024-02-09 13:01:55 +01:00
Harley Acheson d7593c8845 UI: Multiple Interface Icon Additions and Changes
Additional icons for face corner, pointcloud points needed for general
usage. Unselected camera, view locked, and view unlocked for #111076.
Changes to mod_mask for #117467. pointcloud_data changed only for
alignment change. Running Update Icons also changed mod_explode.

Pull Request: https://projects.blender.org/blender/blender/pulls/117732
2024-02-01 20:08:26 +01:00
Sean Kim d763e276ee Fix: Adjust alert_icons export-width
Adjust the `export-width` size of alert_icons_update.py since the
Blender has now been removed #117676.

Pull Request: https://projects.blender.org/blender/blender/pulls/117682
2024-01-31 01:33:30 +01:00
Harley Acheson 8f6ee910ba UI: Remove Blender Logo Alert Icon
As discussed in the UI Module Meeting we don't have an acceptable use
case for dialogs that use the Blender logo. Removing this image from
the project since this is now exposed through dialog customization.

Pull Request: https://projects.blender.org/blender/blender/pulls/117676
2024-01-30 20:22:38 +01:00
Campbell Barton 8f4f4d62bc Cleanup: include release/datafiles/ to "make check_mypy"
Also add type hints to some scripts.
2024-01-25 10:06:29 +11:00
Campbell Barton d44e09cf32 Cleanup: minor simplification to icon scripts inkscape detection
Only set the inkscape_bin when the environment variable isn't set.
2024-01-25 09:56:06 +11:00
Brecht Van Lommel 7c9c916b02 Build: improve make icons detection of Inkscape and Blender on macOS
Respect INKSCAPE_BIN and BLENDER_BIN environment variables if set,
make expected Inkscape path show when missing, simplify code.
2024-01-24 18:55:54 +01:00
Sean Kim 407dbdbcdc Fix: make icons command fails on macOS due to not finding inkscape
The INKSCAPE_BIN environment variable set by GNUmakefile was overriding
a good default path, now bring it in line with other icons scripts.

Pull Request: https://projects.blender.org/blender/blender/pulls/117464
2024-01-24 18:52:40 +01:00
Harley Acheson a510bad81a UI: Change of File Save Icon
UI Module agreed to change of the Save icon to a version, also created
by Andrzej Ambroz, that resembles a traditional floppy-disc style.

Pull Request: https://projects.blender.org/blender/blender/pulls/117251
2024-01-19 17:54:29 +01:00
Christoph Lendenfeld 5e28601d69 Anim: Separate keying flags
Splits the flag `..._FLAG_INSERTNEEDED` between autokey and
manual keying. The fact that this flag was shared between the two
systems has been the cause of issues in the past. It wouldn't
let you insert a keyframe even though you explicitly used an operator
to do so.

In order to be clearer what options are used where, the user preferences
have been reordered.

By default "Only Insert Needed" will be enabled for auto-keying, but not for manual keying.
The versioning code will enable both if it was enabled previously.

# Code side changes

The keying system has flags that define the behavior
when keys are inserted. Some of those flags were shared
between keying and auto-keying. Some were only used for
auto-keying.
To clarify that, prefix flags that used exclusively in one or the other
system with `AUTOKEY`/`MANUALKEY`

Also the flag name on the user preferences and the tool settings was renamed.
Previously it was called `autokey_flag`. To indicated that it is not only used
for autokeying, rename it `keying_flag`.

Fixes: #73773

Pull Request: https://projects.blender.org/blender/blender/pulls/115525
2024-01-19 16:26:10 +01:00
Harley Acheson f42071c793 UI: Updated Auto Keying Button Icon
Changing the icons used for auto keying to be more noticeable.

Pull Request: https://projects.blender.org/blender/blender/pulls/105574
2024-01-08 23:16:56 +01:00
Antonio Vazquez 926854ddc4 GPv3: Material Render Preview
This adds support for material previews for GPv3.

Pull Request: https://projects.blender.org/blender/blender/pulls/115985
2023-12-15 11:50:48 +01:00
Christoph Lendenfeld 1a998c73eb Fix: Keying Channel Defaults
This was missed during #113504

While the versioning code set the flags correctly,
the defaults were not specified correctly.
This would leave new users to key only location.

Fix it by enabling Location, Rotation, Scale and
Custom Properties by default.

Pull Request: https://projects.blender.org/blender/blender/pulls/116180
2023-12-14 11:28:03 +01:00
Brecht Van Lommel 73a8b8846d Fix #115562: Issues with color picker and color values near 1
Since changing the reference color space to XYZ E, there was some imprecision
in color space conversions.

Change the XYZ D65 to Linear Rec.709 conversion matrix very slightly to avoid
values rounding the wrong way.

Updated matrix provided by Zijun Zhou.

Pull Request: https://projects.blender.org/blender/blender/pulls/115767
2023-12-04 20:05:59 +01:00
Harley Acheson 8933284518 UI: Icons for Area Join and Swap
Icons provided by Alexey Adamitsky to represent screen area join and
screen area swap.

Pull Request: https://projects.blender.org/blender/blender/pulls/115712
2023-12-02 20:08:01 +01:00
Christoph Lendenfeld a99e419b6e Anim: Insert keyframes without keying sets
When animators want to key something in the viewport,
the code needs to know *which properties* should be keyed of that selected thing.
So far that was done with keying sets, and a pop-up that let's
you choose the keying set to use. You can get rid of the popup by
choosing a keying set ahead of time. But that is also not always desirable.

That pop-up is quite confusing and gives way too many options.
To simplify this process this PR adds a User Preference option to choose one or more of:
* Location
* Rotation
* Scale
* Rotation Mode
* Custom Properties

Now whenever the `I` key is pressed in the viewport,
and no keying set is enabled, it reads the preferences for which channels to insert.

# User Facing changes
* The popup will not be shown when pressing the hotkey,
 but you can still explicitly use keying sets by going to the menu
* Which channels are keyed is defined by a User Preference setting under animation
* when a keying set is used explicitly, the User Preference settings are ignored

Part of #113278

Pull Request: https://projects.blender.org/blender/blender/pulls/113504
2023-11-21 15:38:01 +01:00
Sergey Sharybin fa0d3d2b58 Fix #114661: Incorrect display of Rec.1886 and Rec. 2020 view transforms
Seems that the ExponentWithLinearTransform with offset=0 does not render
properly on GPU on Apply Silicon GPUs. Likely, it is possible to use plain
ExponentTransform in this case, which should also be faster.

Candidate for 4.0.1 corrective release.

Pull Request: https://projects.blender.org/blender/blender/pulls/114853
2023-11-16 09:47:49 +01:00
Stefan Heinz 153dd76d22 UI: Icons for Horizontal and Vertical Split
Adding new icons to represent horizontal and vertical area splitting.

Pull Request: https://projects.blender.org/blender/blender/pulls/114433
2023-11-15 20:16:49 +01:00
Harley Acheson 06404082b5 Cleanup: Synchronizing Icons
Mostly just the result of running `blender_icons_update.py` without adding or changing any icon source files. Removal of three unused icons and adding three others to the project to resolve conflicts between them.

Pull Request: https://projects.blender.org/blender/blender/pulls/114874
2023-11-15 18:59:19 +01:00
Harley Acheson 3f5654b491 Fix #114080: Add Khmer Font
Add Noto Sans Khmer (variable) font, needed for new translation.
2023-11-13 17:38:03 +01:00
Gilberto Rodrigues dfd1b63cc7 UI: improve mesh edge highlighting
Changes to edit mode mesh overlays, use hue shift instead of color
fading/darkening for selection mode visual differentiation, and some
theme changes to improve the display of mesh edges and faces with good
selection visibility.

- Removed "edge" toggle from edit mode overlays panel.
- No longer halves the edge and face alpha depending on selection mode.
  Half the face alpha in wire-frame mode. For better visibility on most
  themes.

Ref !111431
2023-11-02 22:09:17 +11:00
Pablo Vazquez f9928a0f56 Merge branch 'blender-v4.0-release'
# Conflicts:
#	source/blender/blenkernel/BKE_blender_version.h
2023-10-31 13:09:51 +01:00
Pablo Vazquez fd1a5b52c1 Theme: do not mark pulldown menus as active on hover
Match the color of regular menu items on hover.

Do versioning comes right after since it's needed for another bug.
2023-10-31 13:04:59 +01:00
Brecht Van Lommel 39107b3133 Revert changes from main commits that were merged into blender-v4.0-release
The last good commit was 8474716abb.

After this commits from main were pushed to blender-v4.0-release. These are
being reverted.

Commits a4880576dc from to b26f176d1a that happend afterwards were meant for
4.0, and their contents is preserved.
2023-10-30 21:40:35 +01:00
Brecht Van Lommel 38ec7ab51a Merge branch 'blender-v4.0-release' into main 2023-10-23 17:14:05 +02:00
Zijun Zhou 1dd8fb8f5f Fix False Color view transform looks and console warning
* Linear is enough for the 3x1D LUT, tetrahedral is not allowed
* False Color is built on AgX, so use its looks to fix broken result

Pull Request: https://projects.blender.org/blender/blender/pulls/114054
2023-10-23 17:11:31 +02:00
Thomas Dinges 6479ba4bad New splash screen for the main development branch
by Blender Studio https://studio.blender.org/wing-it
2023-10-16 16:05:48 +02:00
Thomas Dinges a3f024975d Revert "Splash screen for Blender 4.0"
This reverts commit 620fe98070.
2023-10-12 16:21:32 +02:00
Thomas Dinges 620fe98070 Splash screen for Blender 4.0
Artwork by Gaku Tada
2023-10-12 16:20:05 +02:00
Nathan Vegdahl e26d287520 Fix #112018: increase AgX LUT resolution
AgX exhibited some banding-like artifacts that were due to being
approximated with a 3D LUT.  This commit resolves that by increasing
the LUT resolution enough to mitigate the artifacts and make them
unnoticeable.

Additionally:
- The previous LUTs were written in a space-inefficient way, using
  e.g. "0.000000" instead of "0".  The new LUTs are written more
  efficiently, avoiding quite as dramatic a file size increase as
  usually accompanies 3D LUT resolution increases.
- The previous LUTs included output values greater than 1.0, which was
  both incorrect for a tone mapper, and also pointless since Blender
  immediately clips them anyway.  The new LUTs clip to 1.0.  This also
  allows the more efficient writing to squeeze even more space savings
  out of the LUTs.
- The previous inverse AgX LUT contained NaNs.  Those have been
  replaced with 0.0 in the new inverse LUT.

Note that due to discrepancies between the LUTs previously provided
to Blender and the AgX scripts that were later published, the color
transform in these LUTs are slightly different.  But they are close, and
equivalently good.

Pull Request: https://projects.blender.org/blender/blender/pulls/113253
2023-10-06 10:12:24 +02:00
Richard Antalik 86a0d0015a VSE: Improve retiming UI
Currently retiming is quite awkward, when you need to retime multiple
strips strips in sync. It is possible to use meta strips, but this is
still not great. This is resolved by implementing selection.

General changes:
Gizmos are removed, since they are designed to operate only on active
strip and don't support selection.
Transform operator code is implemented for retiming data, which allows
more sophisticated manipulation.
Instead of drawing marker-like symbols, keyframes are drawn to
represent retiming data. Retiming handles are now called keys. To have
consistent names, DNA structures have been renamed.
Retiming data is drawn on strip as overlay.

UI changes:
Retiming tool is removed. To edit retiming data, press Ctrl + R, select
a key and move it. When retiming is edited, retiming menu and
context menu shows more relevant features, like making transitions.
Strip and retiming key selection can not be combined. It is possible to
use box select operator to select keys, if any key is selected.
Otherwise strips are selected.
Adding retiming keys is possible with I shortcut or from menu.
Retiming keys are always drawn at strip left and right boundary. These
keys do not really exist until they are selected. This is to simplify
retiming of strips that are resized. These keys are called "fake keys"
in code.

API changes:
Functions, properties and types related to retiming handles are renamed
to retiming keys:
retiming_handle_add() -> retiming_key_add()
retiming_handle_move() -> retiming_key_move()
retiming_handle_remove() -> retiming_key_remove()
retiming_handles -> retiming_keys
RetimingHandle -> RetimingKey

Retiming editing "mode" is activated by setting `Sequence.show_retiming_keys`.

Pull Request: https://projects.blender.org/blender/blender/pulls/109044
2023-09-27 01:45:59 +02:00
Harley Acheson 25b9e8b13b UI: Inter Font with regular (non-slashed) zero
Inter font with "tnum" (Tabular numbers), "ss01" (open digits), and
"ss04 (disambiguation w/o zero). Therefore with a regular zero, not
slashed.

Pull Request: https://projects.blender.org/blender/blender/pulls/112819
2023-09-24 22:44:09 +02:00
Harley Acheson 1be6fb6b07 UI: Inter with Features ss01, ss02, and tnum
Same (current) version of Inter but with some OpenType features set ON:
"Open digits", "Disambiguation", and "Tabular numbers".

Pull Request: https://projects.blender.org/blender/blender/pulls/112795
2023-09-24 00:58:28 +02:00
Harley Acheson f58f6d0338 UI: Replace UI Font with Inter Regular v3.19
Replace default UI font DevaVuSans with Inter Regular v3.19

Pull Request: https://projects.blender.org/blender/blender/pulls/112603
2023-09-21 22:44:07 +02:00
Pablo Vazquez 2f31077463 Fix #112032: Theme: Wrong colors editing list items
Fixed by using a slightly transparent white color that blends
correctly with the background of text inputs and list items.

Also use the same colors in the Text Editor for consistency in both
Dark and Light themes.
2023-09-15 13:00:05 +02:00
Harley Acheson fa32379def UI: Allow Integer Thumbnail Size Range
Instead of four discrete thumbnail sizes, allow the user to instantly
zoom to any integer size from 16-256. This also changes the default to
96 from the current 128.

Pull Request: https://projects.blender.org/blender/blender/pulls/105815
2023-09-13 19:56:53 +02:00
Rawalanche 0e090369d6 Fix #109439: Use List Item widget colors for View Item widgets
As concluded in discussion under #109439, the View Item widgets are
supposed to use List Item widget theme colors. This patch does that.

Co-authored-by: Harley Acheson <harley.acheson@gmail.com>
Pull Request: https://projects.blender.org/blender/blender/pulls/111584
2023-09-01 20:02:20 +02:00
Rawalanche 411cd827b7 Nodes: Move Auto-Offset toggle to User Preferences
Move Auto-Offset toggle from Node Editor View menu
into the Editing > Node Editor section of User Preferences,
to reflect its use as a workflow option not configured
per editor or per file.

Pull Request: https://projects.blender.org/blender/blender/pulls/111589
2023-08-29 01:18:33 +02:00
Campbell Barton b150b47720 UI: add a preference for the number of samples used for FPS playback
This was hard coded to 8, which can still result in a number that
jitters making the overall FPS difficult to measure.

The default is still 8, but this is now a preference that can be
increased for values that don't jitter as much.
2023-08-25 19:33:48 +10:00
Zijun Zhou 23fc8126be Color management: Shrink Filmic LUT size down without noticeable difference
This PR shrinks the Filmic LUT's size down without causing noticeable
difference, making the overall LUT package size smaller. There should be no
functional change on the user end.

Pull Request: https://projects.blender.org/blender/blender/pulls/111380
2023-08-22 15:30:12 +02:00
Zijun Zhou a9053f7efb Color management: Add AgX view transform and make it default
On a user level this view transform provides much better handling of colors in
the over-exposed areas.

With this configuration the following display devices are available, including
AgX view transform for them:
* sRGB
* Display P3
* Rec.1886
* Rec.2020

NOTE: There is no Filmic view transform available for the newly added display
devices.

AgX also brings an implementation of False Colors view transform, which replaces
Filmic-based, and is available for all display devices.

The backward compatibility is preserved. The new files will default to AgX view
transform, which makes it non-forward compatible.

More technical details is available in the original PR #106355.
Please note that the PR has been split into more incremental changes when
was landing.

Pull Request: https://projects.blender.org/blender/blender/pulls/111099
2023-08-22 12:53:15 +02:00