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-08-04Cleanup: spellingCampbell Barton
2021-08-03Cleanup: use C++ comments or 'if 0' for commented codeCampbell Barton
2021-07-26Cleanup: spelling in commentsCampbell Barton
2021-07-25Fix T86768, bevel doesn't loop slide sometimes.Howard Trickey
Six years ago, Bug T44961 about unwanted spikes had me not do a loop slide if the angle was too extreme, to avoid unwanted spikes. The current bug showed that that angle was much too big, and limited desired behavior in many cases. Changing the angle from 0.25 radians to 0.0001 radians (about 0.006 degrees) still fixes the original bug and seems very unlikely to be limiting desired behavior now.
2021-07-23Cleanup: code comments punctuation / spacingCampbell Barton
2021-07-15Cleanup: replace BLI_assert(!"text") with BLI_assert_msg(0, "text")Campbell Barton
This shows the text as part of the assertion message.
2021-07-11Cleanup: correct spelling in comments, remove profanityCampbell Barton
2021-07-03Cleanup: consistent use of tags: NOTE/TODO/FIXME/XXXCampbell Barton
Also use doxy style function reference `#` prefix chars when referencing identifiers.
2021-07-01Cleanup: remove redundant calls to BMO_error_clearCampbell Barton
2021-06-28Cleanup: repeated terms in code comments & error messagesCampbell Barton
2021-06-26Cleanup: full sentences in comments, improve comment formattingCampbell Barton
2021-06-24Cleanup: comment blocks, trailing space in commentsCampbell Barton
2021-06-22Cleanup: Spelling MistakesLeon Zandman
This patch fixes many minor spelling mistakes, all in comments or console output. Mostly contractions like can't, won't, don't, its/it's, etc. Differential Revision: https://developer.blender.org/D11663 Reviewed by Harley Acheson
2021-06-22Fix T89345: Edit-mesh decimate doesn't update face normalsCampbell Barton
Invalid face normals were used for tessellation.
2021-06-18Fix T89247: Dereference arguments to comparison function correctlyFen
`bm_face_len_cmp` incorrectly interpreted its arguments as `BMFace *` instead of `BMFace **`, causing an out-of-bounds read. Ref D11637
2021-06-13Cleanup: redundant initializationCampbell Barton
These were limited to obvious cases. Some less obvious cases were kept as refactoring might make them necessary in future.
2021-04-30Cleanup: comments in BMesh bisect, use doxygen sectionsCampbell Barton
2021-04-29Fix T86799: Boolean crashes duplicating object with "Fast" solverCampbell Barton
BMesh intersect could leave invalid items in the selection list, causing a crash. The list is now cleared since boolean is such a destructive operation, it's unlikely the selection order would be useful. Thanks to @lukastoenne for finding the root cause.
2021-04-29Fix build error: use of unintialized variableWannes Malfait
Differential Revision: https://developer.blender.org/D11115
2021-04-29Fix T87863: Bisect fails when edges of an N-gon lie on the planeCampbell Barton
Logic for bisect handled edges in the face crossing the plane, but not concave N-gons containing multiple edges that lie on the plane.
2021-04-12Fix T87259: Un-Subdivide creates duplicate facesCampbell Barton
Add argument to BM_vert_collapse_faces to remove any faces that become duplicate as result of the collapse.
2021-04-09Cleanup: use our own code style for doxy-gen comment blocksCampbell Barton
2021-04-02Cleanup: Remove unecessary C API for direct mesh booleanHans Goudey
The main goal here is to remove the need for a C API to the code in `mesh_boolean_convert.cc`. This is achieved by moving `MOD_boolean.c` to C++ and making the necessary changes for it to compile. On top of that there are some other slight simplifications possible to the direct mesh boolean code: it doesn't need to copy the material remaps, and the modifier code can use some other C++ types directly.
2021-03-20Bevel code: add a null pointer check.Howard Trickey
2021-03-18Cleanup: spellingCampbell Barton
2021-03-08Speedup for usual non-manifold exact boolean case.Howard Trickey
The commit rB6f63417b500d that made exact boolean work on meshes with holes (like Suzanne) unfortunately dramatically slowed things down on other non-manifold meshes that don't have holes and didn't need the per-triangle insideness test. This adds a hole_tolerant parameter, false by default, that the user can enable to get good results on non-manifold meshes with holes. Using false for this parameter speeds up the time from 90 seconds to 10 seconds on an example with 1.2M triangles.
2021-02-28Fix T86082 Bevel messed up UVs on some multisegment bevels.Howard Trickey
When polygons around a bevel are rebuilt, sometimes UVs are merged around a new vertex in the case of the face opposite a single edge being beveled on a 3-edge vertex. This should not have been done if any of the edges at that vertex were a seam.
2021-02-13Cleanup: macro hygiene, use parenthesis around operatorsCampbell Barton
2021-02-09Cleanup: spellingCampbell Barton
2021-02-07Fix T84493 et al: New Boolean on Suzanne.Howard Trickey
While Boolean is not guaranteed to work if the operands are not volume-enclosing (technically: PWN - piecewise constant winding number), it needs to do something in those cases. This change makes more cases meet user expectations in T84493, T64544, T83403, T82642 (though very slow on that one). The original new boolean code used "generalized winding number" for this fallback; replaced this with code that uses raycasting. Raycasting would have been faster, but for unfortunately also switchd to per-triangle tests rather than per-patch tests since it is possible (e.g., with Suzanne) to have patches that are both inside and outside the other shape. That can make it much slower in some cases, sadly.
2021-02-05Cleanup: correct spelling in commentsCampbell Barton
2021-01-30Fix T84465 Bevel Percent and Absolute when limit type is Weight.Howard Trickey
The previous fix to the width modes Percent and Absolute did not take into account that with limit mode Weight, the amount needs to be scaled by the bevel weight of the beveled edge in question. (Sometimes there are two beveled edges in question, in which case an average is used.)
2021-01-24Cleanup: spellingCampbell Barton
2021-01-20Cleanup: remove extra in trailing asteriskCampbell Barton
Comment blocks not conforming to convention.
2021-01-13Cleanup: spellingCampbell Barton
2020-12-14Fix T83725 Inconsistent vertex group between exact and fast boolean.Howard Trickey
This makes the exact boolean have zero weights for any vertex groups on any newly created vertices, which is what the fast solver does. The exact boolean solver was interpolating vertex data when interpolating loop data in newly created faces. Not sure why I chose that. The Fast boolean solver doesn't do that, so I stopped doing it too.
2020-12-05Add more timing hooks for boolean.Howard Trickey
2020-11-24Speedups for new boolean. Better hash function for verts.Howard Trickey
The existing hash function didn't work well with Set's method of masking to the lower bits, because many verts have zeros in the lower bits. Also, replaced VectorSet with Set for Vert deduping.
2020-11-17Merge branch 'blender-v2.91-release'Campbell Barton
2020-11-17BMesh: support for comparing loops when calculating face-groupsCampbell Barton
Add an optional callback to check source/destination loops for BM_mesh_calc_face_groups. This is needed so it can be used to calculate UV islands.
2020-11-12Merge branch 'blender-v2.91-release'Howard Trickey
2020-11-12Fix T80475, bad bevel: side vertex in bad plane in some cases.Howard Trickey
Needed a better normal to for plane to offset into when there are non in-plane edges between two beveled edges. It was using the vertex normal, which is just wrong. Differential Revision: https://developer.blender.org/D9508
2020-11-09Cleanup: Clang-tidy, inconsistent parameter nameAnkit Meel
readability-inconsistent-declaration-parameter-name
2020-11-09Cleanup: fix some clang tidy issuesJacques Lucke
2020-11-08Fix T81651, exact boolean modifier incorrect if operand hidden.Howard Trickey
The code was trying to ignore hidden geometry when doing boolean, which is correct when used as a tool, but not when a modifier. Added a "keep_hidden" argument to bmesh_boolean to distinguish the two cases. Also fixed a bug when the tool is used with hidden geometry that is attached to unhidden geometry that is deleted by the operation.
2020-11-08Fix T81651, exact boolean modifier incorrect if operand hidden.Howard Trickey
The code was trying to ignore hidden geometry when doing boolean, which is correct when used as a tool, but not when a modifier. Added a "keep_hidden" argument to bmesh_boolean to distinguish the two cases. Also fixed a bug when the tool is used with hidden geometry that is attached to unhidden geometry that is deleted by the operation.
2020-11-07Cleanup: Clang-tidy, modernize-concat-nested-namespacesAnkit Meel
2020-11-06Cleanup: Clang-Tidy modernize-use-nullptrSybren A. Stüvel
Replace `NULL` with `nullptr` in C++ code. No functional changes.
2020-11-06Cleanup: Use descriptive variable namesHans Goudey
2020-11-06Cleanup: use ELEM macroCampbell Barton