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
2019-09-05Object: Mode switching operatorCampbell Barton
Remove unused OBJECT_OT_mode_set_or_submode, add OBJECT_OT_mode_set_with_submode which can switch to edit mode as well as a sub-mode - currently only mesh select mode is supported (others may be added later).
2019-09-05Cleanup: reuse mesh select mode enumCampbell Barton
2019-09-04Fix T55745: Checker de-select, inconsistent selectionYevgeny Makarov
With these changes, successive selections result in an even pattern.
2019-09-02Fix T69404: Merge by distance crash with UnselectedCampbell Barton
Error introduced when removing the automerge bmesh operator.
2019-08-30Cleanup: spellingCampbell Barton
2019-08-29Cleanup: unused warningCampbell Barton
2019-08-29Edit Mesh: AutoMerge and Split: Improve detection of the best split facemano-wii
2019-08-29Fix possible endless loop in AutoMerge and Splitmano-wii
2019-08-28Cleanup: remove automerge BMesh operatorCampbell Barton
Move logic into EDBM_automerge since this is meant to run after transform and isn't a generic editing operation.
2019-08-28Cleanup: split automerge logic into own fileCampbell Barton
This isn't closely related to selection & this file was over 5k lines.
2019-08-27Fix Poly Build crash with empty meshesPablo Dobarro
Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D5609
2019-08-27Edit Mesh: Poly build tool improvementsPablo Dobarro
This commit changes the functionality of the Poly build tool to make it more suitable for retopology tasks: - Click and drag from a boundary edge extrudes a new quad - Click and drag on vertices tweaks the position - Ctrl + click adds geometry. There is a geometry preview in the gizmo. It also can automatically convert triangles to quads. - Shift + click deletes mesh elements (faces or vertices) - Updated preselection code. Different mesh elements take priority depending on the selected action. Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D5573
2019-08-27Cleanup: rename max_len -> alloc_lenCampbell Barton
2019-08-27Cleanup: struct member name wasn't descriptiveCampbell Barton
2019-08-27Cleanup: unused warningCampbell Barton
2019-08-27Edit Mesh AutoMerge: Improve `Split Edges & Faces` optionmano-wii
Now all wire edges linked to the merged vertex are used for split faces. Reviewers: campbellbarton Differential Revision: https://developer.blender.org/D5603
2019-08-26Edit Mesh: New option "Split Edges & Faces" to "AutoMerge"mano-wii
Ref T66423 Differential revision: https://developer.blender.org/D5562
2019-08-25Cleanup: skip adding tessface loop & color layersCampbell Barton
Also correct check in unused poll function
2019-08-25Cleanup: rename mesh looptri/tessface functionsCampbell Barton
Use consistent terminology.
2019-08-25Cleanup: remove tessface check when entering edit-modeCampbell Barton
2019-08-25Cleanup: remove unused ED_mesh_*_tessface functionsCampbell Barton
2019-08-25RNA: remove Mesh.update() calc_loop_triangles argumentCampbell Barton
This calculated tessfaces, not loop-triangles. Remove this since they aren't accessible from RNA anymore.
2019-08-25Cleanup: remove USE_TESSFACE_DEFAULT defineCampbell Barton
2019-08-21Cleanup: vertex coordinate access, naming & minor changesCampbell Barton
This also splits vertex access and allocation so it's possible to copy coordinates into an existing array without allocating it.
2019-08-21Transform: New Snap Option: Edge Perpendicularmano-wii
Part of T66420 Option for snapping to the nearest point of a reference coordinate. The patch also adds Edge Center and Perpendicular snaps to the ruler. {F7675906} Reviewers: campbellbarton, brecht Reviewed By: campbellbarton Differential Revision: https://developer.blender.org/D5543
2019-08-16Cleanup: spellingCampbell Barton
2019-08-16Fix T67999: calling Mesh.materials.clear() crashes BlenderSybren A. Stüvel
The `BKE_material_pop_id()` and `BKE_material_clear_id()` functions had a parameter `update_data` that, when `false`, would cause the mesh polys to keep their material index, even when the indexed material slots were removed. This behaviour was never used in the C code and not supported by the drawing code, making polygons disappear and causing crashes. The Python binding in RNA, however, defaulted to `update_data=False`. This commit removes the `update_data` parameter altogether, and makes the functions always fix up the material indices. Reviewed by: mont29, brecht
2019-08-16Fix T64998: Multi window spin tool crashCampbell Barton
There could be a more direct way to initialize a gizmo in a view, for now this resolves the crash.
2019-08-15Edit Mesh Selection: Refactor: Redraw idmap buffer at runtime with only ↵mano-wii
objects inside the rect But in the future the selection code may also be used in object mode (eg for snapping). So to avoid using too much VRAM resources, it is good to avoid drawing all objects in the viewport. The solution was to create an array with only objects that are detected within the selection area. If the selection operator is modal, objects already detected are not removed from the array until view3d is moved or orbited. To detect the object, its BoundBox is tested. Since the Select Engine does not have a dedicated depth texture, whenever a new object is "found" the depth of the objects in the array already drawn is redrawn. Reviewers: campbellbarton, fclem Reviewed By: fclem Differential Revision: https://developer.blender.org/D5435
2019-08-12Fix T66922: Merge by distance tooltip text wrongPhilipp Oeser
merge/dissolve distance is actually a maximum, not a minimum Reviewers: campbellbarton Maniphest Tasks: T66922 Differential Revision: https://developer.blender.org/D5462
2019-08-09Fix T67821: Snap to Symmetry not updatingSebastian Parborg
Added a missing depsgraph update.
2019-08-08Cleanup: use doxy sectionsCampbell Barton
2019-08-07Edit Mesh Selection: Move ED_view3d_select_ functions to bf_drawmano-wii
It is easier to deal with private values of the DRW_select engine and gives room for improvement. Reviewers: campbellbarton, fclem Differential Revision: https://developer.blender.org/D5415
2019-08-02Edit Mesh Select: Remove redundant and deprecated `FAKE_SELECT_MODE_...`mano-wii
2019-07-31Refactor access to dependency graphSergey Sharybin
This change ensures that operators which needs access to evaluated data first makes sure there is a dependency graph. Other accesses to the dependency graph made it more explicit about whether they just need a valid dependency graph pointer or whether they expect the graph to be already evaluated. This replaces OPTYPE_USE_EVAL_DATA which is now removed. Some general rules about usage of accessors: - Drawing is expected to happen from a fully evaluated dependency graph. There is now a function to access it, which will in the future control that dependency graph is actually evaluated. This check is not yet done because there are some things to be taken care about first: for example, post-update hooks might leave scene in a state where something is still tagged for update. - All operators which needs to access evaluated state must use CTX_data_ensure_evaluated_depsgraph(). This function replaces OPTYPE_USE_EVAL_DATA. The call is generally to be done in the very beginning of the operator, prior other logic (unless this is some comprehensive operator which might or might not need access to an evaluated state). This call is never to be used from a loop. If some utility function requires evaluated state of dependency graph the graph is to be passed as an explicit argument. This way it is clear that no evaluation happens in a loop or something like this. - All cases which needs to know dependency graph pointer, but which doesn't want to actually evaluate it can use old-style function CTX_data_depsgraph_pointer(), assuming that underlying code will ensure dependency graph is evaluated prior to accessing it. - The new functions are replacing OPTYPE_USE_EVAL_DATA, so now it is explicit and local about where dependency graph is being ensured. This commit also contains some fixes of wrong usage of evaluation functions on original objects. Ideally should be split out, but in reality with all the APIs being renamed is quite tricky. Fixes T67454: Blender crash on rapid undo and select Speculation here is that sometimes undo and selection operators are sometimes handled in the same event loop iteration, which leaves non-evaluated dependency graph. Fixes T67973: Crash on Fix Deforms operator Fixes T67902: Crash when undo a loop cut Reviewers: brecht Reviewed By: brecht Subscribers: lichtwerk Maniphest Tasks: T67454 Differential Revision: https://developer.blender.org/D5343
2019-07-31Spelling fixes in comments and descriptions, patch by luzpazBrecht Van Lommel
Differential Revision: https://developer.blender.org/D3744
2019-07-30Fix T67370 Normal Tools(Alt +N), copy and paste not workSebastian Parborg
The copy operator requried at least a vert AND a face to be selected. It should only require that a vert OR a face is selected.
2019-07-303D View: Move selection API to a Selection engine.mano-wii
This commit moves the API of selecting faces, vertices and edges to a DRW manager engine. Reviewers: campbellbarton, fclem Subscribers: jbakker, brecht Differential Revision: https://developer.blender.org/D5090
2019-07-28Cleanup: remove unused ID-map undo APICampbell Barton
Removing this since it was added for TexFace support which has since been removed.
2019-07-24Fix T66768: Grid fill span not workingCampbell Barton
2019-07-16Fixed crash when adding/removing custom normals from pinned meshSybren A. Stüvel
When a mesh is pinned in the properties panel, Blender crashes when you click the "Add Custom Split Normals Data". The code calls `ob = ED_object_context(C)` which returns NULL when the mesh is pinned in the properties panel, causing a segfault when trying to get the mesh via `ob->data`. A new function `ED_mesh_context(C)` avoids this by first checking whether a mesh was pinned in the context. If not, it checks the pinned object's data. If that's not there, or it's not a mesh, it returns the active object's mesh. Finally it returns NULL if there is no active object, or if the active object is not a mesh object. Reviewed By: brecht, mont29 Differential Revision: https://developer.blender.org/D5223
2019-07-14Cleanup: Do not use camel case for "Freestyle"Aaron Carlisle
2019-07-11Undo System: add is_final argument (no functional changes)Campbell Barton
This is needed step out of undo steps which accumulate changes, larger changes could be made to handle this but better not make them at this point.
2019-07-03Fix T66332: Move gizmo stays in place when vertex is deletedPhilipp Oeser
Reviewers: brecht Maniphest Tasks: T66332 Differential Revision: https://developer.blender.org/D5177
2019-06-30Fix T66204, bevel numeric input respect scene units.Howard Trickey
2019-06-29Fix T65929: multi-object editing for new normals tools.Howard Trickey
Leaving the modal point-at as a TODO for now. All the rest of the new split normal tools converted to operate on all selected objects.
2019-06-24Fix T66030: [CRASH] Modifying Normals with Skin Modifier.Bastien Montagne
clnor editing code was simply not checking at all whether it has something to work on... Guess nobody had idea to edit custom normals on a mesh that has no normals before! :P This should probably be handled in a poll function too, to completely disable those tools when there are no faces/loops, but let's keep it to minimal changes at that point.
2019-06-24Fix T65824: Span property ignored in mesh.fill_gridCampbell Barton
The fix for T60777 caused this operator not to work from Python. Add a repeat_last flag for operator execution.
2019-06-24UI: Rename "Dupli" to "Duplicate" in Spin ToolAaron Carlisle
2019-06-17Cleanup: comment spellingCampbell Barton