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
2020-09-30Cleanup: convert gforge task ID's to phabricator formatValentin
Cleanup old tracker task format to the new. e.g: [#34039] to T34039 Ref D8718
2020-09-23Fix T68024: Crash from missing original-index mesh layerCampbell Barton
Constructive modifiers were not initializing an original index layer in the case a previous deform modifier created 'mesh_final'. This happened in the case of multiple deform modifiers that deform along normals, as requesting normals caused the final mesh to be created. Ensure mapping data is created in the case only non-constructive modifiers have run.
2020-09-23Cleanup: re-order constructive modifier checksCampbell Barton
Minor changes to simplify fix (coming next), no functional changes.
2020-09-18Sculpt: Render Mask and Face Sets with modifiers activePablo Dobarro
This removes the limitation of the sculpt overlays not being visible with modifiers active. Reviewed By: fclem Maniphest Tasks: T68900 Differential Revision: https://developer.blender.org/D8673
2020-09-02Cleanup: use bool instead of int in various placesJacques Lucke
2020-08-20Cleanup: clang-formatCampbell Barton
2020-08-18Multires: Base Mesh SculptingPablo Dobarro
This adds an option to the Multires modifier to sculpt directly on the base mesh while previewing the displacement of a higher subdivisions level. What this does it considering Multires as a regular modifier without exposing the grid displacement to sculpt mode. This allows to see the propagation happening in real time, which enables to use complex tools like Cloth or Pose in much higher resolutions and without surface noise and artifacts. Reviewed By: sergey, Severin Differential Revision: https://developer.blender.org/D8555
2020-08-18Mesh: merge `mesh_create_eval_final_{view,render}` functionsSybren A. Stüvel
Functions `mesh_create_eval_final_view()` and `mesh_create_eval_final_render()` were doing the exact same thing, except for a hack introduced in d3eb9dddd6b4 (2012-10-08, Better fix for T32846: dupligroup messes up particle instancing on rendering) that appears to be no longer necessary. Besides that, these functions had confusing names. Their functionality changed over time, and whether to do for-render or for-viewport evaluation is now actually determined by the depsgraph evaluation mode. This means that the `..._render` function could evaluate a mesh with viewport settings, and vice versa. The functions are now merged into `mesh_create_eval_final()`, and the hack has been removed. The `OB_NO_PSYS_UPDATE` flag has been removed entirely (instead of keeping it around as deprecated flag), because it was always only temporarily set on objects during mesh evaluation and thus not saved to the blend file. No expected functional changes as far as users are concerned.
2020-08-13Fix T65148: Drivers can't access shape keysSybren A. Stüvel
It was impossible for drivers to use shape key properties, modifiers generate a new mesh. After mesh evaluation the shape keys are no longer necessary, and because of this the `key` pointer was not copied. As drivers work on evaluated data, however, they do need this `key` pointer. This commit makes the `key` pointer available in evaluated meshes, but this is somewhat dangerous. There was an explicit reason why the key on result was kept at null pointer: to have the evaluated mesh in a consistent state. Assigning this pointer makes it potentially inconsistent, as the evaluated mesh and the original shape key may have different topologies. Reviewed By: sergey Differential Revision: https://developer.blender.org/D7785
2020-08-08Cleanup: use array syntax for sizeof with fixed valuesCampbell Barton
Also order sizeof(..) first to promote other values to size_t.
2020-08-06Merge branch 'blender-v2.90-release'Bastien Montagne
2020-08-06Move CDData debug print helper from DM to CustomData 'namespace'/files.Bastien Montagne
2020-08-03Cleanup: remove unused code, update commentsCampbell Barton
2020-07-03Cleanup: Blendkernel, Clang-Tidy else-after-return fixes (incomplete)Sybren A. Stüvel
This addresses warnings from Clang-Tidy's `readability-else-after-return` rule in the `source/blender/blenkernel` module. Not all warnings are addressed in this commit. No functional changes.
2020-06-24Fix memory leak calculating deform modifiers in edit-modeCampbell Barton
This bug goes back to 2.80 but doesn't seem to have been reported.
2020-06-10Cleanup: move BKE_mesh_wrapper functions into own headerCampbell Barton
2020-05-25Mesh: skip conversion from edit-mesh to mesh in edit-modeCampbell Barton
This resolves a performance regression in 2.8x where every edit-mode update performed an edit-mesh to mesh conversion. Now the conversion will be lazily initialized if/when it's required. New BKE_mesh_wrapper_* functions abstract over mesh data access. Currently only edit-mesh and regular meshes are supported. In the future sub-surface meshes may be supported too.
2020-05-22Cleanup: remove unnecessary NULL testBrecht Van Lommel
2020-05-08Cleanup: clang-formatCampbell Barton
2020-05-08Fix T76498: Refactoring - Rename BKE modifiers funtionsAntonio Vazquez
2020-04-30Multires: Enable sculpting in all subdivision levelsPablo Dobarro
Return the correct sculpt level in BKE_multires_sculpt_level_get and enable the property in the UI Reviewed By: sergey Differential Revision: https://developer.blender.org/D7575
2020-04-22Objects: add infrastructure for hair, pointcloud, volume modifiersBrecht Van Lommel
There is no user visible difference in standard builds, as there are no volume modifiers yet. When using WITH_NEW_OBJECT_TYPES some deform only modifiers are now available for hair and pointcloud objects. Differential Revision: https://developer.blender.org/D7141
2020-03-19Cleanup: `make format` after SortedIncludes changeDalai Felinto
2020-03-17Cleanup: Remove unused functionSergey Sharybin
Was introduced earlier today and did not turn out to be very useful and clear.
2020-03-17Mesh: Fix applying deform modifier up to indexSergey Sharybin
The code would have break the first (deform only) modifiers once the index is reached, but it will not prevent second loop (over remaining modifiers) from run. This was applying deform modifier twice in some conditions: having single deform modifier and calculating deformed mesh up to the first modifier (index=0).
2020-03-17Mesh: Add utility to calculate deform modifier up to indexSergey Sharybin
Intention is to be used to create mesh at the state which is an input to the multires modifier.
2020-03-06Improve modifier error message with sculpt modePhilipp Oeser
Make it obvious that this relates to being in sculpt mode. ref T74489 Maniphest Tasks: T74489 Differential Revision: https://developer.blender.org/D7044
2020-02-28Objects: make evaluated data runtime storage usable for types other than meshBrecht Van Lommel
This is in preparation of new object types. This only changes mesh_eval, we may do the same for mesh_deform_eval and other areas in the future if there is a need for it. This previously caused a bug in T74283, that should be fixed now. Differential Revision: https://developer.blender.org/D6695
2020-02-28Revert "Objects: make evaluated data runtime storage usable for types other ↵Brecht Van Lommel
than mesh" This reverts commit f2b95b9eae2ee913c99cff7595527b18d8b49d0a. Fix T74283: modifier display lost when moving object in edit mode. The cause is not immediately obvious so better to revert and look at this carefully.
2020-02-27Objects: make evaluated data runtime storage usable for types other than meshBrecht Van Lommel
This is in preparation of new object types. This only changes mesh_eval, we may do the same for mesh_deform_eval and other areas in the future if there is a need for it. Differential Revision: https://developer.blender.org/D6695
2020-02-26Cleanup: remove unused derived mesh functionalityCampbell Barton
2020-02-26Cleanup: reduce CDDM use, remove unused function callsCampbell Barton
2020-02-10Cleanup/refactor: Rename `BKE_library` files to `BKE_lib`.Bastien Montagne
Note that `BKE_library.h`/`library.c` were renamed to `BKE_lib_id.h`/`lib_id.c` to avoid having a too generic name here. Part of T72604.
2020-01-07BMesh: remove BMEditMesh.ob pointerCampbell Barton
Remove this pointer since it's linking Mesh data back to the object, where a single edit-mesh may have multiple object users, causing incorrect assumptions in the code. Resolves dangling pointer part of the T72667 crash, although there are other issues which still need to be fixed. In EDBM_op_finish and EDBM_update_generic, full Main lookups have been added which should be replaced with mesh argument or the update tagging moved elsewhere.
2019-12-24Cleanup: remove unused statvis code & struct membersCampbell Barton
This code has been moved into the draw manager.
2019-11-27Cleanup: spelling, clang-formatCampbell Barton
2019-11-13Force sculpting on highest multires levelSergey Sharybin
This is a workaround for T58473 to avoid likely event of ruining sculpted data. Differential Revision: https://developer.blender.org/D6244
2019-11-13Fix T71503: Wrap + displace + multires + Sculpt crashSergey Sharybin
The root of the issue goes to the discontinuity between the way how mesh_calc_modifiers() and BKE_sculpt_multires_active() works. At some point detection of original data usage by a modifier got broken: the mesh_final based check is unreliable because deform-only modifiers will create mesh_final for the connectivity information. This made it so modifier stack evaluation would skip multires evaluation, but the sculpt code will assume the multires is properly applied. This change makes it an explicit check about whether there are any non-deform-only modifiers applied. Pair programming and review together with Bastien, thanks!
2019-11-13Modifiers: Correct deform-only modifiersSergey Sharybin
There was a discontinuity between how deform-only modifiers are applied for the case when result deform mesh is requested and when it is not. Namely, the input mesh will always be guaranteed to present in the former case, but not in the latter. This change makes it so input mesh to deform-only modifiers is always at consistent state. Pair programming and review together with Bastien, thanks!
2019-10-11Depsgraph: Cleanup, promote is_evaluating querySergey Sharybin
This way it might be used for sanity checks in RNA API as well.
2019-09-23Modifiers: every modifier now copies mesh settings, fixing texture space issuesBrecht Van Lommel
Modifier stack evaluation would copy mesh settings other than mesh topology automatically, outside of the individual modifier evaluation. This leads to hard to understand code, and makes it unclear which settings are available in following modifiers, and which only after the entire stack is evaluated. Now every modifier is responsible to ensure the mesh it outputs preserves materials, texture space and other settings, or alters them as needed. Fixes T64739: incorrect texture space for various modifiers Differential Revision: https://developer.blender.org/D5808
2019-09-21Revert "Modifiers: every modifier now copies mesh settings, fixing texture ↵Brecht Van Lommel
space issues" This reverts commit e7a514369fe700dcc5a1fe433c8f709ed9595ded, it introduces a bug in selection in edit mode. Fixes T70103: can't select extruded Vertex Ref T64739
2019-09-19Modifiers: every modifier now copies mesh settings, fixing texture space issuesBrecht Van Lommel
Modifier stack evaluation would copy mesh settings other than mesh topology automatically, outside of the individual modifier evaluation. This leads to hard to understand code, and makes it unclear which settings are available in following modifiers, and which only after the entire stack is evaluated. Now every modifier is responsible to ensure the mesh it outputs preserves materials, texture space and other settings, or alters them as needed. Fixes T64739: incorrect texture space for various modifiers Differential Revision: https://developer.blender.org/D5808
2019-08-25Cleanup: remove unused DM_to_mesh functionCampbell 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-21Cleanup: remove unused derived-mesh API callsCampbell Barton
2019-08-05Fix T68211: Transfer Mesh Data with Custom Normal crash when Auto Smooth is ↵Bastien Montagne
enabled. Code in modifier stack ensuring requested CDLayers are provided was not working very well for polynors in several cases: * We cannot share the orig mesh if we have to generate pnors/lnors; * Generating pnors without lnors was not possible.
2019-06-13Mesh: don't compute CD_ORCO layer when there are no deforming modifiersBrecht Van Lommel
This saves memory and evaluation time for simple static meshes with e.g. a subdivision surface modifier. If no CD_ORCO layer exists then we assume the actual vertex coordinates are equal to the original undeformed coordinates.
2019-06-12Cleanup: spelling in commentsCampbell Barton
2019-06-05Cleanup: Remove unused argumentSergey Sharybin