Add a new constraint called "Geometry Attribute", which directly
samples vector, quaternion, or 4x4 matrix attributes from geometry and
applies these to an object's or bone's transform.
This can be used to transfer data generated by geometry nodes to the
object or bone level. By default the constraint will sample a vector
on the vertex domain. The default attribute is `position` for
simplicity, but the attribute value does not have to have anything to
do with neither the transform of the geometry object nor the geometry
itself.
Pull Request: https://projects.blender.org/blender/blender/pulls/136477
A test of using multi-color SVG icons in place of the current "vector"
(custom drawn) style we are using now. These use separate colors for
the box body versus outline, shadow, handhold. Colored by the theme
colors.
Pull Request: https://projects.blender.org/blender/blender/pulls/126307
This adds new icons for the remaining two modifier Essentials assets
bundled with Blender in the `Generate` category.
(`Curve to Tube` and `Scatter on Surface`)
Pull Request: https://projects.blender.org/blender/blender/pulls/147115
The RNA icon was rotating on the wrong direction.
Technically this is mostly a DNA helix, but even RNA can be a
double-helix sometimes. And both cases (RNA and DNA) are supposed to
have a right-hand orientation.
This PR also removes the RNA_ADD icon which is not used anywhere.
Based on suggestion by Brady Johnston.
Ref: !146600
Expose the "Mute Links" add "Add Reroute" operator as active tools
in the node editor similar to the "Links Cut" tool.
This also works around #134153 by adding additional tools in the same
button group to the toolbar.
Pull Request: https://projects.blender.org/blender/blender/pulls/140429
This PR adds a slip tool in the toolbar with its own custom icon for
applying slips using the mouse. This is useful for e.g. tablets where a
keyboard is not handy and a button would be best to activate the
operator.
There is also a custom cursor that appears when hovering over valid,
slippable strips (and a "stop" icon when the strip cannot be slipped).
Alt may be used in order to ignore slipping connected strips when using
the tool, similar to selection logic. The slip tool only performs its
sole function of slipping and as such does not change the selection
state.
In the future, we can also add "slide" functionality to the same tool,
giving it multiple functions.
Pull Request: https://projects.blender.org/blender/blender/pulls/143513
Edge and Vertex marks such as Crease, Bevel Weight, Seam, Sharp, have
specific use cases and colors assigned to them that users get familiar
with over time.
It can be hard to remember which color belong to what, this PR tries to
address this by introducing colored icons that follow the theme setting
for that edge mark/flag.
See PR for details and screenshots.
Pull Request: https://projects.blender.org/blender/blender/pulls/144075
The recently introduced feature of playhead snapping (#137278)
added a popover menu for snap targets.
This used text to indicate the contents of said popover.
In order to bring it in line with the other snapping menu, this PR adds
icons to indicate the enabled state of snapping.
Part of #135794
Pull Request: https://projects.blender.org/blender/blender/pulls/139271
This PR replaces our current custom mouse cursors (defined in
wm_cursors.cc using bitmaps and masks that we edit with a python
program) with SVG sources that are rasterized at the exact size when
needed. For Windows this would also replace the 29 platform-specific
"cur" files, although this PR does not actually remove those. For Linux
this creates the same kind of cursor as now (1bpp XBitMap) but at a
better size.
Pull Request: https://projects.blender.org/blender/blender/pulls/140990
Adding three icons to represent panning, rotate, and zoom gestures
and using them for status bar event icons for
GHOST_kTrackpadEventScroll, GHOST_kTrackpadEventRotate, and
GHOST_kTrackpadEventMagnify.
Pull Request: https://projects.blender.org/blender/blender/pulls/138569
Rather than continuing to use ICON_TEMP, meant to represent temporary
locations, this PR adds a specific one - ICON_PREVIEW_LOADING - for
this purpose. Just a copy of ICON_TEMP for now, but with all parts at
40% opacity, matching how we use it now. Not only gives us an icon we
can later change, but also removes our special handling of reducing
opacity for one icon id.
Pull Request: https://projects.blender.org/blender/blender/pulls/135463
This PR adds three SVG Icons. One to represent that an icon is not
found - ICON_NOT_FOUND - so represent when an out-of-range value was
used to specify an icon. The second - ICON_CHAR_NOTDEF - is to
represent that a text character is not found in the specified font or
font stack. The third - ICON_CHAR_REPLACEMENT - is to indicate the
portion of a text string that contains invalid bytes.
Pull Request: https://projects.blender.org/blender/blender/pulls/134008
Add a variation of the current Grip icon that is vertically-aligned.
the current ICON_GRIP works great when it has lots of horizontal space,
but ICON_GRIP_V might be needed for horizontally constrained uses.
Pull Request: https://projects.blender.org/blender/blender/pulls/134777
Earlier in the brush assets project, for mesh sculpting, grease pencil,
and curves sculpting, the toolbar brush icon used was changed to a
version with a green highlight. This commit reverts that change to use
the monochrome grey icon instead in each of these modes.
For Sculpt mode specifically, the Paint tool icon is kept as this green
version to differentiate the usages. In future releases, further changes
are planned for sculpting related brushes to better represent their
functionality.
---
### Sculpt Mode Toolbar

Pull Request: https://projects.blender.org/blender/blender/pulls/129934
Since brush assets were merged, all sculpt and paint modes have a unified
"Brush" tool that is used for all brushes. Based on feedback, this mixes brush
types a bit too much, so some specific tools that use brushes should be brought
back. These brush types just behave very different from the main brush types,
and users expect them to be easily accessible from the toolbar. This also makes
them more discoverable and having tools that remember their last used brush can
be useful too (e.g. assigning shortcut to eraser tool to switch back to last
used eraser, rather than a specific eraser brush).
Note that further changes are planned, to get a true "best of both worlds"
design, where people can use a global brush library without having to worry
about tools, but brushes can also be accessed via tool categorization.
The new design works well with both mental models without being a compromise
in-between.
a79f9100a6 already brought back some tool for grease pencil draw mode, with this
commit the design is now applied to all sculpt & paint modes.
See PR for a list of tools that were brought back.
Design Task: https://projects.blender.org/blender/blender/issues/128066
Pull Request: https://projects.blender.org/blender/blender/pulls/128038
This rename the `Cutter` tool's name, code and icon to `Trim`.
The legacy Grease Pencil code is unchanged.
This was discussed in the 2024-07-30 Grease Pencil Module Meeting.
Reasons for the change:
- Match the `Trim Stroke Ends` setting on brushes.
- Match the `stroke_trim` operator.
- Name is more clear and more commonly used.
- Frees the name for a future boolean cutting tool.
Pull Request: https://projects.blender.org/blender/blender/pulls/126452
Right-clicking on an edge between editors, the "Screen Area Options"
menu has a number of items including for Area Join. When docking is
NOT enabled this gives the prior behavior of interactive join where
you can change direction and requires Enter to confirm. If docking
is enabled then there are instead instant join options but now with
a specific icon for each direction.
Pull Request: https://projects.blender.org/blender/blender/pulls/126616
#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
We have a number of event icons, used on the Status Bar, to indicate
mouse actions. It is currently difficult to align these nicely because
they vary in width and design. This PR makes them all the same design
width and aligned to the left edge. This removes a need to add negative
spacing before any of them and only requires space after some of them.
This also adds a new one to indicate "double left click" as my current
use of this looks a bit sus. This also adds a "mouse wheel scroll"
Pull Request: https://projects.blender.org/blender/blender/pulls/125731
This icon can be used when refering to a "geometry set" which can contain
potentially multiple geometries of different types (such as mesh, volume, etc.).
It was designed by Simon Thommes as part of #125293.
Since 7b0ea0f1b4, brushes use the asset system and previews are stored
in the asset source blend files. The bundled ones are part of the
essentials asset library, see
`release/datafiles/assets/publis/brushes/essentials_brushes.blend`.
Note that this doesn't remove the toolbar icons for these brushes yet.
Initially reviewed in (but this commit contains further changes missing
in the PR):
https://projects.blender.org/blender/blender/pulls/123842
Our icon sources currently include two versions of the Blender logo,
the official one and one that is modified to align better to our
smallest pixel grid. But with our recent change to SVG icons, and
alignment tweaks to the official version this can be used in all
cases. This PR does so, removes BLENDER_LARGE, and also slightly
tweaks FILE_BACKUP and FILE_BLEND to use the official form.
Pull Request: https://projects.blender.org/blender/blender/pulls/124179
Add definitions for the UI icons that we use in larger sizes, like in
the File Browser or in dialogs. The SVG source files for these are
already in the project, this just allows their use like ICON_FILE_LARGE
or ICON_WARNING_LARGE.
Pull Request: https://projects.blender.org/blender/blender/pulls/123622
Distribute our UI icons as separate SVG files in a folder in the
Blender installation. Rasterize each only when requested at the exact
size needed, and then saved in the text glyph cache for later uses.
Pull Request: https://projects.blender.org/blender/blender/pulls/121718
This PR adds the *Line Hide* tool and the corresponding
`PAINT_OT_hide_show_line_gesture` operator to Sculpt Mode.
*Line Hide* supports common modal functionality including:
* Snapping to angles
* Flipping the selection area
* Moving selection area
Addresses one of the tools in #80390
Pull Request: https://projects.blender.org/blender/blender/pulls/119671
Add an icon called INTERNET that looks like our current URL without the
mouse cursor, so it looks less specifically like a web document. So can
be used to represent other internet and cloud-based services.
Pull Request: https://projects.blender.org/blender/blender/pulls/119186
This commit adds the `SCULPT_OT_hide_show_lasso_gesture` and the
corresponding Lasso Hide tool.
* Exposes the selection type for both the lasso and box hide tools
as a option in the header
* Adds functionality into `sculpt_gesture.cc` for handling lasso
selections with the `Outside` selection type
For `SelectionType::Outside`, the current implementation opts to not
do any filtering on the PBVH node level due to cases where the node
is mostly covered by a single gesture.
Addresses one of the tools in #80390
Pull Request: https://projects.blender.org/blender/blender/pulls/119140
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
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
Listing the "Blender Foundation" as copyright holder implied the Blender
Foundation holds copyright to files which may include work from many
developers.
While keeping copyright on headers makes sense for isolated libraries,
Blender's own code may be refactored or moved between files in a way
that makes the per file copyright holders less meaningful.
Copyright references to the "Blender Foundation" have been replaced with
"Blender Authors", with the exception of `./extern/` since these this
contains libraries which are more isolated, any changed to license
headers there can be handled on a case-by-case basis.
Some directories in `./intern/` have also been excluded:
- `./intern/cycles/` it's own `AUTHORS` file is planned.
- `./intern/opensubdiv/`.
An "AUTHORS" file has been added, using the chromium projects authors
file as a template.
Design task: #110784
Ref !110783.