Blender Git Loki

Blenderin Git "master"-kehityshaaran kommitit.

40 minutes ago
Cleanup: make BKE_mesh_loops_to_tessdata a static function
43 minutes ago
Docs: add additional notes on tessellation, update comments
3 hours 23 min ago
Mesh: optimize object mode face tessellation

- Multi-thread BKE_mesh_recalc_looptri.

- Add BKE_mesh_recalc_looptri_with_normals,
this skips having to calculate normals for ngons.

Exact performance depends on number of faces, size of ngons and
available CPU cores.

For high poly meshes the isolated improvement to BKE_mesh_recalc_looptri
in my tests was between 6.7x .. 25.0x, with the largest gains seen in
meshes containing ngons with many sides.

The overall speedup for high poly meshes containing quads and triangles
is only ~20% although ngon heavy meshes can be much faster.
3 hours 23 min ago
Mesh: minor optimization to concave quad check for tessellation

Use the face normal (when available) for a faster concave quad test.
4 hours 50 min ago
Cleanup: clang-format
22 hours 20 min ago
Cleanup: use doxy sections
23 hours 19 min ago
Cleanup: clang-tidy
1 day and 4 hours ago
VSE: Remove seq->tmp usage

Remove `seq->tmp` usage from transform code. It was used to tag strips
that need to be "shuffled". Pass these strips in `SeqCollection`

Reviewed By: sergey, mano-wii

Differential Revision:
Revision f9aea19 by Hans Goudey
1 day and 10 hours ago
Spreadsheet Editor: Row Filters

This patch adds support for filtering rows based on rules and values.
Filters will work for any attribute data source, they are a property
of the spreadsheet rather than of the attribute system. The properties
displayed in the row filter can depend on data type of the currently
visible column with that name. If the name is no longer visible, the
row filter filter is grayed out, but it will remember the value until
a column with its name is visible again.

Note: The comments in `screen.c` combined with tagging the sidebar
for redraw after the main region point to a lack of understanding
or technical debt, that is a point to improve in the future.

**Future Improvements**
* T89272: A search menu for visible columns when adding a new filter.
* T89273: Possibly a "Range" operation.

Differential Revision:
1 day and 13 hours ago
Fix T89261: Crash when calculating bmesh tessellation

Error passing `false` instead of a `BMeshCalcTessellation_Params` struct.
1 day and 14 hours ago
Cleanup: Remove dead code

This code was disabled in 2.8 and all other associated code/comments
have been removed/cleared. These rna properties have been replaced with
1 day and 15 hours ago
Fix Build Warning

Removal of unused local variable. Calculation of underline thickness
no longer needed with change to text output of underscore character.

Introduced in aee04d496035

Differential Revision:
1 day and 15 hours ago
Fix T89259: GPencil Duplicate point doesn't work for last point

The loop was checking the len of the island, but if the island started in the last point the copy was not executed.
1 day and 16 hours ago
Armature: add automatic B-Bone Scale toggles.

Currently B-Bone scaling can only be controlled via their
properties, thus requiring up to 8 drivers per joint between
B-Bones to transfer scaling factors from the handle bone.

A Scale Easing option is added to multiply the easing value
by the Y scale channels to synchronize them - this produces a
natural scaling effect where both the shape of the curve and
the scale is affected.

In addition, four toggles are added for each handle, which
multiply each of the X, Y, Z and Ease values by the matching
Local Scale channel of the handle bone, thus replacing trivial
drivers. The Scale Easing option has no effect on this process
since it's easy to just enable both Length and Ease buttons.

Differential Revision:
1 day and 16 hours ago
Armature: add B-Bone Y scale channel and extra flag fields to DNA.

In addition to the base bone transformation itself, B-Bones have
controls that affect transformation of its segments. For rotation
the features are quite complete, allowing to both reorient the
Bezier handles via properties, and to control them using custom
handle bones. However for scaling there are two deficiencies.

First, there are only X and Y scale factors (actually X and Z),
while lengthwise all segments have the same scaling. The ease
option merely affects the shape of the curve, and does not cause
actual scaling.

Second, scaling can only be controlled via properties, thus
requiring up to 6 drivers per joint between B-Bones to transfer
scaling factors from the handle bone. This is very inefficient.

Finally, the Z channels are confusingly called Y.

This commit adds a B-Bone Y Scale channel and extra B-Bone flag
fields to DNA with appropriate versioning (including for F-Curves
and drivers) in preparation to addressing these limitations.

Functionality is not changed, so the new fields are not used
until the following commits.

Differential Revision:
1 day and 16 hours ago
Armature: implement lengthwise scaling of B-Bone segments.

Implement actual behavior for the B-Bone Y Scale channels added
to DNA and UI in the previous commit in addition to the existing
X and Z Scale inputs.

The two length scale inputs control the ratio between the lengths
of the start and end segments of the bone: although for convenience
two inputs are provided, the whole chain is still uniformly scaled
to fit the curve.

Differential Revision:
1 day and 16 hours ago
Fix T89246: No Mnemonic Underlines in Dialogs

When drawing mnemonic underlines for hotkeys, use text output of
underscore character instead of direct drawing a line. Otherwise these
are not visible in dialog buttons.

Introduced in 0fcc063fd99c

Differential Revision:

Reviewed by Campbell Barton
1 day and 16 hours ago
UI: Sequencer: Use ampersand instead of slash for "Sequencer/Preview"

Using an ampersand here is more semantically correct. A slash indicates "or" while an ampersand indicates "and".
An ampersand here is best because the view type shows both the Sequencer and the Preview.
1 day and 17 hours ago
GPencil: Missed flag in previous Copy Settings commit

1 day and 17 hours ago
GPencil: Move copy layer settings to function

Better to have a function that can be reused to duplicate the settings that need to be copied.
Tehnyt: Miika HämäläinenViimeksi p?ivitetty: 07.11.2014 14:18 MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021