* BLENDER_SYSTEM_SCRIPTS support for multiple script paths, separated by
; on Windows and : on other platforms.
* New BLENDER_CUSTOM_SPLASH to replace the splash screen image.
* New BLENDER_CUSTOM_SPLASH_BANNER to overlay an image on the splash.
Contributed by Sony Interactive Entertainment: https://github.com/PlayStation-OpenSource
As the complaint shows, using default layout the column for absolute
keys in the Shape Keys list gets cut off. This PR increases this space
by changes to alignment and column split factor.
Pull Request: https://projects.blender.org/blender/blender/pulls/131887
The Action Editor was already getting crowded, but has become even
moreso with the addition of the new Slot selector. Part of this clutter
is due to the NLA-related buttons:
- The up/down track switching buttons.
- The Push Down button.
- The Stash button.
The latter two are currently still useful, but don't need to be directly
on the header itself. This PR moves them to the header's Action menu.
The up/down buttons have several issues:
- They are conceptually confusing: you cannot visually see what's
happening or which track you're on without an NLA editor open anyway,
so somewhere in the NLA Editor would be a better place for them.
- Their functionality is broken, and it seems has been for a long time:
you can go down in the track stack, but often can't go back up,
despite the existence of the up button. It doesn't appear that anyone
has reported this cripplingly broken behavior, which strongly suggests
that very few people (if anyone) is using or relying on these buttons.
- They don't make any sense when you have more than one strip on a track
anyway (which strip do you go into tweak mode on?).
For all these reasons, this PR simply removes the up/down buttons.
- Wrap the closing parenthesis onto it's own line
which makes assignments to the return value
read better.
- Reduce right-shift with multi-line function calls.
Capitalize the default filename used for .blend files and other savable
and exportable file formats (like images, 3D formats, etc.) from
"untitled" to "Untitled".
Pull Request: https://projects.blender.org/blender/blender/pulls/132424
- At import => Create some multi-slot action if multiple node are impacted by the glTF animation
- At export =>
- Multi-slot actions are exported as a single glTF animation by default
- There is still an option to get back to previous feature, merging by track name instead of by action
KHR_animation_pointer is not part of this PR.
animation pointer data are still exported only when using full baking (NLA track or scene export mode).
Using animation pointer related slots for other mode will come in a second step, not planned yet (and will not be part of 4.4)
Some hooks definition changed, and some hook locations changed because of this new behavior.
Communication for hook devs still need to be done
PR: #132771
Pull Request: https://projects.blender.org/blender/blender/pulls/132771
Two messages were not translatable because they used a string stored
in a variable, or an if/else expression.
One was translated when it should not have, because it prints the name
of a material.
Pull Request: https://projects.blender.org/blender/blender/pulls/132737
- "Strength" in the context of Grease Pencil, deals with opacity, and
adjusts the brush stroke alpha.
- "Strength" can mean measurable units like 'noise', 'light', etc.
- Anything else using physical strength in a generic concept.
Issue reported by Hoang Duy Tran.
"Smooth" can be many things, but mostly a verb or adjective depending
on context.
Already handled in the past, but some things were missed or introduced
since then.
- In the context of color balance, refers to a power function. Uses
ID_MOVIECLIP context, because the ID_NODE is already used for math
functions.
- In the context of the scale constraint, also a power function.
- In the context of physics and particle settings, refers to a
falloff.
- In the context of property subtypes and units, refers to a
quantity.
Issue reported by Hoang Duy Tran.
"Light" already has multiple contexts, but some were missing:
- In general, "Light" refers to a Blender Light object. In many cases,
this comes from an `id_type` enum, already using the ID context. Use
it also for properties that were missing that context.
- In the context of render passes, "Light" is the actual illumination
factor, not the light emitor. A new "Render Layer" translation
context is introduced for this purpose as no existing ones are both
specific and explicit enough.
Issue reported by Hoang Duy Tran.
"End" in "Clip End" can be better translated to something like "Far"
in some languages. Using the "Camera" context even when it's not
specifically a camera clipping (also affects light probes).
Issue reported by Gorazd-Gorup.
- In a text sequence, "Box" refers to the color rectangle behind the
text. Reuses the "Sequence" context already used for the same thing.
Issue reported by Gabriel Gazzán.
- "Match Case" and "Wrap Around" were renamed but they do not need a
translation context anymore.
- Spreadsheet tooltips with unneeded translation of format
strings like `fmt::format(TIP_("{}"))`.
EEVEE material slots would be erroreously shown when there's no material
slots in a Grease Pencil object. Changed the `poll` function to prevent
this from happening.
Pull Request: https://projects.blender.org/blender/blender/pulls/132846
Similar to other visibility properties, include "hide_viewport" in
collection properties tab. One issue is that, when collection is
disabled, automatically parent collection is selected or tab is gone
when parent collection does not exist. The check was added in
0a903e7ab1, it doesn't seem very useful so
removed that.
Pull Request: https://projects.blender.org/blender/blender/pulls/132107
Support walking over non-manifold edge loops since calculating a
per-edge UV length only makes sense if all UV's that use that edge
are taken into account.
Enums in Blender evaluate to a string, so trying to add them to a pose
failed with an error because FCurves only accept numbers.
The fix is to modify the data path and split the property name off.
By evaluating that we arrive at the bone, from which we can call `get(property_name)`
to get the int value.
Pull Request: https://projects.blender.org/blender/blender/pulls/132124
The logic to generalize over downloading a URL or reading data from
the file-system included static values in the iterator along with the
data being read - so the caller could access the total expected size of
the data being read. While this worked, the result didn't read well.
Now these iterators yield the data being read, a new type has been
added for the caller to read the size hint from.
Also correct invalid doc-string.
This renames the struct `Sequence` to `Strip`.
While the motivation for this partially comes from
the "Sequence Design" #131329, it seems like this
is a good refactor whether the design gets implemented
or not.
The `Sequence` represents what users see as strips in the
VSE. Many places in the code already refere to a `Sequence`
as "strip". It's the C-style "base class" of all strip types.
This also renames the python RNA type `bpy.types.Sequence`
to `bpy.types.Strip` which means that this technically breaks
the python API.
Pull Request: https://projects.blender.org/blender/blender/pulls/132179
Accessing the internal extensions command would warn that the processes
stdout wasn't closed on completion. While it's harmless at the moment,
ensure it's closed using a context manager.
Falloff/cavity mask checkboxes seems disabled themselves when unticked.
The layout was split so that only the options below the checkbox are inactive.
UI looks and acts the same when checkboxes are ticked.
Pull Request: https://projects.blender.org/blender/blender/pulls/132507