Blender Git Commits

Blender Git "soc-2021-curves" branch commits.

Page: 8 / 19

June 21, 2021, 14:31 (GMT)
Cleanup: use eSpace_Type enum type
June 21, 2021, 14:31 (GMT)
Cleanup: Rename spline interpolation functions

The names were slightly longer than they needed to be clear,
and when they are shorter they tend to fit on one line better.
June 21, 2021, 14:31 (GMT)
Fix T89310: Industry Compatible keymap not working

Caused by improper testing on my part, assuming a helper function
existed in the industry compatible keymap file, and also assuming it
also used the N and T keys for the left and right side-regions.
June 21, 2021, 14:31 (GMT)
Fix T89302: Broken normals after mesh to curve node

The normals were broken because the normal calculation mode wasn't set.
This patch adds a default normal mode so all code creating a spline does
not necessarily have to set it manually. In the future there should be a
way to change this value in the node tree.
June 21, 2021, 14:31 (GMT)
Fix: Spreadsheet selection filter crash on non-mesh components

The spreadsheet filter tried to apply the mesh selection filter on non-
mesh geometry components. Add a check for the component type,
and also refactor the function to be more easily readable.
June 21, 2021, 14:31 (GMT)
Curves: Multithread Curve to CurveEval conversion

A different data structure / implementation is used for curves in the
node tree currently. Converting from the DNA `Curve` structure to this
wasn't slow, but it's nice to decrease overhead. In a test of 14000
splines with 128000 points, this halves the runtime from about 5ms
to about 2.5ms.
June 21, 2021, 14:31 (GMT)
Geometry Nodes: Multithread curve resample node

Optimize the node for the case of many splines. In a test file with
14000 splines, the node is 3x faster (72ms to 24ms) on an 8 core CPU.
June 21, 2021, 14:31 (GMT)
Cleanup: make BKE_mesh_loops_to_tessdata a static function
June 21, 2021, 14:31 (GMT)
Delaunay add support for detecting and removing holes from output.

Adds two new output modes to the CDT api which detect and remove
holes. A hole is a face from which a ray shot to the outside
intersects an even number of constraint edges, except we don't
count constraint edges in the same connected region of faces,
where a region is connected via non-constraint edges.

These modes are useful for filling in outlines meant to represent
text characters and the like.

Original patch was from Erik Abrahamsson, modified by me to work
with the "valid Bmesh" output type too. I also added tests
for the new modes.
June 21, 2021, 14:31 (GMT)
Docs: improve imbuf.write docstring

The file path wasn't documented as being optional.
June 21, 2021, 14:31 (GMT)
Docs: improve poly_to_tri_count doc-string

It wasn't obvious this can be used for calculating the triangle index
from the polygon and loop index.
June 21, 2021, 14:31 (GMT)
Docs: add additional notes on tessellation, update comments
June 21, 2021, 14:31 (GMT)
Mesh: minor optimization to concave quad check for tessellation

Use the face normal (when available) for a faster concave quad test.
June 21, 2021, 14:31 (GMT)
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
`seq_prev_type`
June 21, 2021, 14:31 (GMT)
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: https://developer.blender.org/D10959
June 21, 2021, 14:31 (GMT)
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.
June 21, 2021, 14:31 (GMT)
Cleanup: use doxy sections
June 21, 2021, 14:31 (GMT)
Fix T89261: Crash when calculating bmesh tessellation

Error passing `false` instead of a `BMeshCalcTessellation_Params` struct.
June 21, 2021, 14:31 (GMT)
Cleanup: clang-tidy
June 21, 2021, 14:31 (GMT)
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`
instead.

Reviewed By: sergey, mano-wii

Differential Revision: https://developer.blender.org/D11631
By: Miika HämäläinenLast update: Nov-07-2014 14:18MiikaHweb | 2003-2021