Blender Git Commit Log

All Blender Git commits.

Page: 452 / 8462

July 15, 2021, 04:08 (GMT)
adaptive_cloth: fix: Mesh: split edge: reference is broken

The reference to the edge is broken because adding or deleting an edge
can realloc memory which means all the references are invalid. So just
need to recreate the references after a addition or deletion of an
element.

Would really appreciate a borrow checker to handle such
instances.
July 15, 2021, 02:58 (GMT)
Format
July 15, 2021, 02:57 (GMT)
Add an evaluator cache to avoid recompiling evaluation kernels.
July 15, 2021, 02:46 (GMT)
USD export: scene instancing WIP.

Work in progress updating the instancing export
implementation to handle true scene graph instancing,
setting the instanceable prim property and updating
the transform and material creation logic. This requires
further testing.
July 15, 2021, 00:41 (GMT)
enable WITH_GL_EGL to distribute binary X11-EGL builds
July 15, 2021, 00:22 (GMT)
deps_builder: zstd 1.5.0

Having zstd available is a requirement for landing D5799

Reviewed By: sybren

Differential Revision: https://developer.blender.org/D11079
July 14, 2021, 22:33 (GMT)
Fix crash when adding a modifier after a subsurf modifier
July 14, 2021, 22:32 (GMT)
cmake: enable Wayland by default
July 14, 2021, 22:32 (GMT)
GHOST/wayland: try Wayland only when 'BLENDER_WAYLAND' is set
July 14, 2021, 22:15 (GMT)
GHOST/wayland: create mmap-ed file manually if memfd_create is unavailable
July 14, 2021, 22:07 (GMT)
Merge branch 'master' into soc-2021-porting-modifiers-to-nodes-solidify

# Conflicts:
# release/scripts/startup/nodeitems_builtins.py
# source/blender/blenkernel/BKE_node.h
# source/blender/blenkernel/intern/node.cc
# source/blender/blenkernel/intern/solidify_nonmanifold.c
# source/blender/nodes/CMakeLists.txt
# source/blender/nodes/NOD_geometry.h
# source/blender/nodes/NOD_static_types.h
July 14, 2021, 21:56 (GMT)
Changes based on review by Jacques Lucke (JacquesLucke)
July 14, 2021, 21:17 (GMT)
CMake: Have CMake Control the C++ version.

We were manually setting the compiler flags
for C++17 support for this previously. CMake
can do this for us in a uniform way without
having to worry about compiler specifics.

Setting these flags manually somehow brought
out some unwanted behaviour (CMake switching
back to C++14) in the nightly CMake builds.

Unsure if that's a CMake bug or planned
new behaviour for future version, but best
to play it safe.

These flags are supported since CMake 3.1
so should not break anything.

Reviewed by: Campbell Barton

Differential Revision: https://developer.blender.org/D11891
July 14, 2021, 20:49 (GMT)
UI: Auto-scroll to keep active text buttons in view

If a text button is activated that is not in view (i.e. scrolled away),
the scrolling will now be adjusted to have it in view (with some
small additional margin). While entering text, the view may also be
updated should the button move out of view, for whatever reason. For the
most part, this feature shouldn't be needed and won't kick in, except
when a clicked on text button is partially out of view or very close to
the region edge. It's however quite important for the previously
committed feature, that is, pressing Ctrl+F to start searching in a UI
list. The end of the list where the scroll button appears may not be in
view. Plus while filtering the number of visible items changes so the
scrolling has to be updated to keep the search button visible.

Note that I disabled the auto-scrolling for when the text button spawned
an additional popup, like for search-box buttons. That is because
current code assumes the button to have a fixed position while the popup
is open. There is no code to update the popup position together with the
button/scrolling.

I also think that the logic added here could be used in more places,
e.g. for the "ensure file in view" logic the File Browser does.
July 14, 2021, 20:49 (GMT)
UI: New button/widget type for Asset Browser like preview tiles

This button type shows a preview image above centered text, similar to
the File Browser files in Thumbnail Display Mode or the default Asset
Browser display. In fact we may want to port these over to use the new
button type at some point.

Will be used by the asset view UI template that will be added in a
following commit. That is basically a mini version of the Asset Browser
that can be displayed elsewhere in the UI.
July 14, 2021, 20:49 (GMT)
UI: Support defining UI lists in C

So far all UI lists had to be defined in Python, this makes it possible
to define them in C as well. Note that there is a whole bunch of special
handling for the Python API that isn't there for C. I think most
importantly custom properties support, which currently can't be added
for C defined UI lists.

The upcoming asset view UI template will use this, which needs to be
defined in C.

Adds a new file `interface_template_list.cc`, which at this point is
mostly a dummy to have a place for the `ED_uilisttypes_ui()` definition.
I plan a separate cleanup to move the UI-list template to that file.
July 14, 2021, 20:49 (GMT)
Cleanup: Use const for UI icon getter function
July 14, 2021, 20:49 (GMT)
UI/Assets: Initial Asset View UI template

The asset view UI template is a mini-version of the Asset Browser that
can be placed in regular layouts, regions or popups. At this point it's
made specifically for placement in vertical layouts, it can be made more
flexible in the future.
Generally the way this is implemented will likely change a lot still as
the asset system evolves.

The Pose Library add-on will use the asset view to display pose
libraries in the 3D View sidebar.

References:
* https://developer.blender.org/T86139
* https://code.blender.org/2021/06/asset-browser-project-update/#what-are-we-building
* https://code.blender.org/2021/05/pose-library-v2-0/#use-from-3d-viewport

Notes:
* Important limitation: Due to the early & WIP implementation of the
asset list, all asset views showing the same library will show the
same assets. That is despite the ID type filter option the template
provides. The first asset view created will determine what's visible.
Of course this should be made to work eventually.
* The template supports passing an activate and a drag operator name.
The former is called when an asset is clicked on (e.g. to apply the
asset) the latter when dragging (e.g. to .blend a pose asset). If no
drag operator is set, regular asset drag & drop will be executed.
* The template returns the properties for both operators (see example
below).
* The argument list for using the template is quite long, but we can't
avoid that currently. The UI list design requires that we pass a
number of RNA or custom properties to work with, that for the Pose
Libraries should be registered at the Pose Library add-on level, not
in core Blender.
* Idea is that Python scripts or add-ons that want to use the asset view
can register custom properties, to hold data like the list of assets,
and the active asset index. Maybe that will change in future and we
can manage these internally.

As an example, the pose library add-on uses it like this:
```
activate_op_props, drag_op_props = layout.template_asset_view(
"pose_assets",
workspace,
"active_asset_library",
wm,
"pose_assets",
workspace,
"active_pose_asset_index",
filter_id_types={"filter_action"},
activate_operator="poselib.apply_pose_asset",
drag_operator="poselib.blend_pose_asset",
)
drag_op_props.release_confirm = True
drag_op_props.flipped = wm.poselib_flipped
activate_op_props.flipped = wm.poselib_flipped
```
July 14, 2021, 20:49 (GMT)
Asset Browser: Python mixin utility for category-specific panels

Using this mixin for a panel definition, it's possible to set in which
categories the panel should appear. This is used by the Pose Library
add-on.
July 14, 2021, 20:49 (GMT)
Fix T88281: Pose Library 'flip pose' sometimes flips wrong

Correct cases where the X-axis of the bone (in pose space) aligns with
the pose-space Y or Z-axis. In these cases the decomposition of the
matrix fails, and a negative scale of the X-axis turns into a 180�
rotation around the Y-axis. An extra -1 scale to the X and Z axes of the
resulting matrix seems to fix things.
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021