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-06-07Cleanup: split bmesh normal calculation into separate filesCampbell Barton
2021-06-05Edit Mesh: partial updates for normal and face tessellationCampbell Barton
This patch exposes functionality for performing partial mesh updates for normal calculation and face tessellation while transforming a mesh. The partial update data only needs to be generated once, afterwards the cached connectivity information can be reused (with the exception of changing proportional editing radius). Currently this is only used for transform, in the future it could be used for other operators as well as the transform panel. The best-case overall speedup while transforming geometry is about 1.45x since the time to update a small number of normals and faces is negligible. For an additional speedup partial face tessellation is multi-threaded, this gives ~15x speedup on my system (timing tessellation alone). Exact results depend on the number of CPU cores available. Ref D11494 Reviewed By: mano-wii
2021-06-01Cleanup: split bmesh tessellation into it's own fileCampbell Barton
Prepare for further refactoring for these functions.
2020-10-19Spelling: Apart Versus A PartHarley Acheson
Corrects incorrect usages of the fragment 'apart of' when 'a part of' was required. Differential Revision: https://developer.blender.org/D9245 Reviewed by Campbell Barton
2020-10-19Spelling: It's Versus ItsHarley Acheson
Corrects incorrect usage of contraction for 'it is', when possessive 'its' was required. Differential Revision: https://developer.blender.org/D9250 Reviewed by Campbell Barton
2020-10-03Cleanup: Remove/replace C standard library assert() and header usagesJulian Eisel
We have our own assert implementation, `BLI_assert()` that is prefered over the C standard library one. Its output is more consistent across compilers and makes termination on assert failure optional (through `WITH_ASSERT_ABORT`). In many places we'd include the C library header without ever accessing it.
2020-09-11Cleanup: spelling, correct commentsCampbell Barton
2020-08-07Code Style: use "#pragma once" in source directoryJacques Lucke
This replaces header include guards with `#pragma once`. A couple of include guards are not removed yet (e.g. `__RNA_TYPES_H__`), because they are used in other places. This patch has been generated by P1561 followed by `make format`. Differential Revision: https://developer.blender.org/D8466
2020-07-09Cleanup: move BMesh UV queries into their own fileCampbell Barton
2020-06-05Cleanup: rename suffix 'conv' to 'convert'Campbell Barton
2020-05-08Cleanup: take includes out of 'extern "C"' blocksJacques Lucke
Surrounding includes with an 'extern "C"' block is not necessary anymore. Also that made it harder to add any C++ code to some headers, or include headers that have "optional" C++ code like `MEM_guardedalloc.h`. I tested compilation on linux and windows (and got help from @LazyDodo). If this still breaks compilation due to some linker error, the header containing the symbol in question is probably missing an 'extern "C"' block. Differential Revision: https://developer.blender.org/D7653
2020-03-19Cleanup: `make format` after SortedIncludes changeDalai Felinto
2019-10-20Fix T70864: Separate loose parts runs indefinitelyCampbell Barton
Large objects with many separate pieces became unstably slow (run for hours and not finish). The entire original mesh was being duplicated twice per loose part. In own tests, millions of vertices and thousands of loose parts now run in around 5-15 seconds.
2019-04-29Cleanup: comments (long lines) in bmeshCampbell Barton
2019-04-17ClangFormat: apply to source, most of internCampbell Barton
Apply clang format as proposed in T53211. For details on usage and instructions for migrating branches without conflicts, see: https://wiki.blender.org/wiki/Tools/ClangFormat
2019-02-18doxygen: add newline after \fileCampbell Barton
While \file doesn't need an argument, it can't have another doxy command after it.
2019-02-06Cleanup: remove redundant doxygen \file argumentCampbell Barton
Move \ingroup onto same line to be more compact and make it clear the file is in the group.
2019-02-01Cleanup: remove redundant, invalid info from headersCampbell Barton
BF-admins agree to remove header information that isn't useful, to reduce noise. - BEGIN/END license blocks Developers should add non license comments as separate comment blocks. No need for separator text. - Contributors This is often invalid, outdated or misleading especially when splitting files. It's more useful to git-blame to find out who has developed the code. See P901 for script to perform these edits.
2018-06-30Merge branch 'master' into blender2.8Campbell Barton
2018-06-30Cleanup: rename bmesh_queries -> bmesh_queryCampbell Barton
Other files with the same purpose already used 'query'.
2018-06-27Cleanup: remove BKE's modifiers_bmesh.c, other DM removal/cleanup in BMesh code.Bastien Montagne
2017-03-12BMesh: rename cryptic functionsCampbell Barton
Use expanded names for bmesh primitive operations (urmv jvke semv jfke). Use 'bmesh_kernel_' prefix, these functions aren't intended for wide use so favor readability. Remove BM_face_vert_separate, it wasn't used and only skipped step of finding correct loop of face.
2015-12-09BMesh: move BM_face_split_edgenet to its own fileCampbell Barton
Isolate edge-net splitting in preparation for other functions to be added here.
2015-09-18Doc: remove todo's from BMesh codeCampbell Barton
These were out of date and better have outside the source. Also clarify BMLoop description.
2015-08-01Docs: doxy cleanup/minor editsCampbell Barton
2015-07-31Docs: doxy correctionsCampbell Barton
2014-11-02Fix connect-vertices failing for concave ngonsCampbell Barton
Also add: - generic callback for bmesh elements. - ability to pass an existing array to a bmesh operator.
2014-09-27Comments: clarify BMLoopCampbell Barton
2014-01-17Code Cleanup: move delete funcs out of bmesh_construct.c into own fileCampbell Barton
2013-09-08update bmesh doxy docs, remove double-promotion warnings in ↵Campbell Barton
remove-strict-flags cmake macro.
2013-09-05code cleanup:Campbell Barton
- add missing headers from cmake (own omission) - quiet rna_test.c unused define warnings. - minor style edits - spelling corrections and ignore all uppercase words with spell checking script.
2013-08-23move bmesh tools into their own include,Campbell Barton
changes to tool args would rebuild far too many files and these are mainly by modifiers outside of bmesh.
2013-08-22new bmesh operator bisect_plane, cuts a mesh in half, takes a user defined ↵Campbell Barton
plane as an argument, handles concave ngons which need multiple cuts.
2013-08-21bmesh api cleanup, face creation args now accept an example face (as with ↵Campbell Barton
vertex and edge), also replace BM_face_create_quad_tri_v with BM_face_create_verts
2013-08-16rewrite edgenet fill bmesh operator.Campbell Barton
previous code created faces with mixed face-flipping and could get very slow, test with ~60,000 edges here hung my system for over 2min (didnt wait for it to finish), new code executes in about 1 second. new code doesn't attempt to flip faces correctly, its quite involved to do so, especially when the new faces are not created adjacent to eachother. so simpler to calculate normals afterwards.
2013-08-13fix for bug in rip tool, isolated verts would remain selected after ripping.Campbell Barton
2013-06-04edit-mesh improvements to select shortest pathCampbell Barton
- Ctrl+RMB only worked for edges & faces - Menu item 'Select Shortest Path' only worked for vertices. Now Ctrl+RMB works for vertices and the menu item works for verts/edges/faces (depending on the current selection).
2013-05-11- add generic edge-loop utility functions for bmesh.Campbell Barton
- rewrite bridge tool to use the new functions (using edge & vertex arrays was quite cumbersome).
2013-04-07Fix for [#34898] Typo in error message of mathutils.VectorThomas Dinges
* Also fixed some more cases of "more then" -> "more than".
2013-01-29Triangulate modifier no longer uses bmesh operator api call, instead add a ↵Campbell Barton
BM_mesh_triangulate() function. Gives ~2x speedup in my tests on an optimized build.
2013-01-14fix for own error with unwrap selection checking uvedit_have_selection() ↵Campbell Barton
failed with no UV layer. also add some safety checks for BM_ELEM_CD_GET_* macros.
2012-12-30Add BMLog for efficiently storing changes to vertices and facesNicholas Bishop
The BMLog is an interface for storing undo/redo steps as a BMesh is modified. It only stores changes to the BMesh, not full copies. Currently it supports the following types of changes: - Adding and removing vertices - Adding and removing faces - Moving vertices - Setting vertex paint-mask values - Setting vertex hflags
2012-11-18finish moving bevel code out of the operator dir (it works again)Campbell Barton
2012-11-18move decimator into tools/ dirCampbell Barton
2012-10-19decimate modifier rewrite to use bmesh (#ifdef-disabled by default for now).Campbell Barton
- maintains quads & ngons - supports some customdata (weight paint for example works fine). TODO - add suppory for loop data (UV's / VCol's). - outputs invalid geometry when heavily reducing some meshes, needs to be made stable in these cases.
2012-09-06code clenup: comments and some style edits on ghost/osx (odd indentation)Campbell Barton
2012-05-21code cleanup: spellingCampbell Barton
2012-04-26code cleanup: bmesh comments/todos, no functional changes.Campbell Barton
2012-04-20rip tool wasnt working on a single edge selection in some cases (own error ↵Campbell Barton
in recent fix).
2012-03-24code cleanup: move bmesh inline funcs to headers (avoids compiling the C files).Campbell Barton