Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-03-29Fix T78650: Lattice evaluation writes to shared dataSybren A. Stüvel
Fix the data management bug where evaluation of lattice objects would write back to the CoW copy of the Lattice ID, even when that copy was shared between objects. Each lattice object evaluation now stores its own evaluated data copy via `BKE_object_eval_assign_data()`. Reviewed By: sergey Maniphest Tasks: T78650 Differential Revision: https://developer.blender.org/D10790
2021-02-17BLI: add BLI_simd.h header to wrap SSE includesBrecht Van Lommel
In preparation of adding Neon support. Ref D8237, T78710
2020-11-24Merge remote-tracking branch 'origin/blender-v2.91-release'Sybren A. Stüvel
2020-11-24Fix T82962: Crash changing lattice resolution with Vertex GroupJeroen Bakker
Regression introduced by {rB042143440d76}. The deform group lookup was performed on the wrong object. Before the lookup was performed on the lattice object. This patch changes this back. Reviewed By: Bastien Montagne Differential Revision: https://developer.blender.org/D9638
2020-10-30Merge branch 'blender-v2.91-release' into masterBastien Montagne
2020-10-30Fix (unreported) buffer-overflow in new lattice code.Bastien Montagne
Follow-up to rBc0beeeb5de0cbc, fixing overflow accesses on arrays introduced by rB042143440d76. It's never 'OK' to access invalid memory...
2020-10-30Fix buffer-overflow in lattice deform evaluationJulian Eisel
Caused Victor.blend from the cloud to crash with ASan. Four floats are fetched from the stack, but the buffer was only three wide. Caused by 042143440d. Issue was probably harmless since the fourth element wasn't actually touched.
2020-10-26LatticeDeform: PerformanceJeroen Bakker
This patch improves the single core performance of the lattice deform. 1. Prefetching deform vert during initialization. This data is constant for each innerloop. This reduces the complexity of the inner loop what makes more CPU resources free for other optimizations. 2. Prefetching the Lattice instance. It was constant. Although performance wise this isn't noticeable it is always good to free some space in the branch prediction tables. 3. Remove branching in all loops by not exiting when the effect of the loop isn't there. The checks in the inner loops detected if this loop didn't have any effect on the final result and then continue to the next loop. This made the branch prediction unpredictable and a lot of mis predictions were done. For smaller inner loops it is always better to remove unpredictable if statements by using branchless code patterns. 4. Use SSE2 instruction when available. This gives 50% performance increase measured on a Intel(R) Core(TM) i7-6700 CPU @ 3.40GHz with GCC 9.3. Also check other compilers. Before: ``` performance_no_dvert_10000 (4 ms) performance_no_dvert_100000 (30 ms) performance_no_dvert_1000000 (268 ms) performance_no_dvert_10000000 (2637 ms) ``` After: ``` performance_no_dvert_10000 (3 ms) performance_no_dvert_100000 (21 ms) performance_no_dvert_1000000 (180 ms) performance_no_dvert_10000000 (1756 ms) ``` Reviewed By: Campbell Barton Differential Revision: https://developer.blender.org/D9087
2020-09-04Cleanup: Clang-Tidy readability-inconsistent-declaration-parameter-name fixSebastian Parborg
No functional changes
2020-08-08Cleanup: use array syntax for sizeof with fixed valuesCampbell Barton
Also order sizeof(..) first to promote other values to size_t.
2020-07-10Cleanup: declaration and implementation function signature did not matchJacques Lucke
2020-06-13Cleanup: use const arguments to deform functionsCampbell Barton
This changes curve deform code not to set the objects inverse matrix, this shouldn't cause problems as it's not used elsewhere afterwards.
2020-06-13Cleanup: naming for lattice deform functionsCampbell Barton
- BKE_lattice_deform_data_create was init_latt_deform. - BKE_lattice_deform_data_destroy was end_latt_deform. - BKE_lattice_deform_data_eval_co was calc_latt_deform.
2020-06-13Modifier: skip edit-mesh conversion for armature, curve & latticeCampbell Barton
This is an improvement over 2.7x which converted edit-mesh to mesh (CDDM) for all 3 modifiers. Overall this increases performance in edit-mode by around 15-20%.
2020-06-12Cleanup: split object data deform functions into their own filesCampbell Barton
Move armature/curve functions into their headers, they were previously in BKE_lattice.h