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 |
|