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-03-04Refactor ID make local to use a single flag parameter.Bastien Montagne
Instead of using anonymous booleans flags, also allows to keep the same behavior in all cases, without needing special handling from calling code for our beloved oddballs object proxies...
2020-03-04Cleanup: ID make local: remove `id_in_bmain` argument.Bastien Montagne
This info is now stored in ID tags themselves, so no need to pass an extra anonymous boolean parameter around, yay!
2020-03-04Cleanup: Rename 'make local' functions to new scheme.Bastien Montagne
Also removed some only used locally from the header, `BKE_lib_id.h` is already way too big, no need to overload it with unused things.
2020-03-04Cleanup: replace CLAMP macros with functionsCampbell Barton
2020-03-03IDs: change FILTER_ID_* to 64 bit to make space for new ID typesBrecht Van Lommel
And change file browser to boolean from bitflag enum, which is only 32 bit. Differential Revision: https://developer.blender.org/D7004
2020-03-03Fix hardness not resetting when using reset brushPablo Dobarro
Just add it to the list or properties to reset from DNA_brush_defaults Reviewed By: jbakker Differential Revision: https://developer.blender.org/D6992
2020-03-03Cleanup: formatting, spellingCampbell Barton
2020-03-03Subdiv: Fix/Workaround for surface partial derivativesSergey Sharybin
Both partial derivatives were evaluated to 0 for a special vertex on Suzanne model: this is happening on a vertex where two adjacent faces with 2 common edges are connected (in the nose of Suzanne). This was breaking multires in this point since tangent matrix is all zeroes, and hence no displacement can be applied in that vertex.
2020-03-03Fix T74375: grid levels theme preference reset to defaultBrecht Van Lommel
2020-03-02Cleanup: make remaining blenkernel headers work in C++Jacques Lucke
2020-03-02Fix T65568: sewing and self collision issueIsh Bosamiya
As explained in T65568 by @LucaRood, the self collision system should exclude triangles that are connected by sewing springs. Differential Revision: https://developer.blender.org/D6911
2020-03-02Fix T74295: Cloth + Internal springs crashes on a non-polygonal geometrySebastian Parborg
Added check to see if the mesh has any polygons at all. If there are no polygons, the bvh tree data will consist of null pointers, so skip internal springs if this is the case.
2020-03-02Clay Thumb: Remove hardcoded hardness valuePablo Dobarro
Clay Thumb was using a custom hardness implementation and value to make it functional. Hardness is now a property of brushes and it is implemented for all brushes, so this is no longer needed. Reviewed By: brecht Differential Revision: https://developer.blender.org/D6981
2020-02-28Sculpt: Cloth brushPablo Dobarro
This brush has a simple physics solver that helps when sculpting cloth. - The mass and the damping properties of the simulation are properties of the brush. - It has two additional radius control to limit the influence and falloff of the simulation. - Masked vertices are pinned in the simulation, and it applies the sculpt gravity directly in the solver. - The Cloth Brush has 7 deformation modes with 2 falloff types (radial and plane). The brush can create the constraints only on the required PBVH nodes, so the simulation is isolated on high poly meshes. As long as the brush size is not too big it should be possible to keep it real time. Known issues: - The way constraints are created is extremely basic and it creates repeated constraints. Maybe there is another way to create fewer constraints while keeping the simulation quality decent. This part can also be multithreaded. (As it is it works ok, but it could be better) Reviewed By: jbakker Differential Revision: https://developer.blender.org/D6715
2020-02-28Fix wrong coordinates being read when using the sculpt APIPablo Dobarro
The coordinates should be read from the PBVH when using deform modifiers. This is needed for the cloth brush to work with subdivisions, as it reads the vertex coordinates using this function when building and updating the constraints. Reviewed By: jbakker Differential Revision: https://developer.blender.org/D6967
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-28Nodes: Use destructor callbacks for bNodeSocketType and bNodeTypeJacques Lucke
Reviewers: brecht Differential Revision: https://developer.blender.org/D6963
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-28Multires: Move current reshaping/propagation logic to legacy fileSergey Sharybin
It will eventually rewritten. This commit prepares some clean space to start this process. So far no functional changes.
2020-02-28Multires: Fix CCG->MDISPS conversion happens twiceSergey Sharybin
Was happening when leaving sculpt mode, introducing unnecessary lag to the operation.
2020-02-28Multires: Cleanup, use early returnSergey Sharybin
2020-02-28Multires: Cleanup, namingSergey Sharybin
2020-02-28Cleanup: SpellingSergey Sharybin
2020-02-28Subdiv: Correct corner passed to foreach_loop callbackSergey Sharybin
Was affecting quad faces. where 0 was always passed for inner loops and a wrong one for boundary ones. In the current code this change shouldn't cause any difference since the corner index is ignored in the actual callback, but it is required to have his fixed for an upcoming changes.
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-27Cleanup: add missing use_nodes in default materials with nodetreesBrecht Van Lommel
This didn't break anything, but could in the future.
2020-02-27Constraints: replace 'Set Inverse' operator with an eval-time updateSybren A. Stüvel
This fixes {T70269}. Before this commit there was complicated code to try and compute the correct parent inverse matrix for the 'Child Of' and 'Object Solver' constraints outside the constraint evaluation. This was done mostly correctly, but did have some issues. The Set Inverse operator now defers this computation to be performed during constraint evaluation by just setting a flag. If the constraint is disabled, and thus tagging it for update in the depsgraph is not enough to trigger immediate evaluation, evaluation is forced by temporarily enabling it. This fix changes the way how the inverse matrix works when some of the channels of the constraint are disabled. Before this commit, the channel flags were used to filter both the parent and the inverse matrix. This meant that it was impossible to make an inverse matrix that would actually fully neutralize the effect of the constraint. Now only the parent matrix is filtered, while inverse is applied fully. As a result, pressing the 'Set Inverse' matrix produces the same transformation as disabling the constraint. This is also reflected in the changed values in the 'Child Of' unit test. This change is not backward compatible, but it should be OK because the old way was effectively unusable, so it is unlikely anybody relied on it. The change in matrix for the Object Solver constraint is due to a different method of computing it, which caused a slightly different floating point error that was slightly bigger than allowed by the test, so I updated the matrix values there as well. This patch was original written by @angavrilov and subsequently updated by me. Differential Revision: https://developer.blender.org/D6091
2020-02-26Fix T74225: Image (from sequence) cannot be loadedPhilipp Oeser
If the current frame was not in range, the ImageTile's 'ok' was stuck at 0. Similar to the ImageUser being reset to 'ok' in BKE_image_user_frame_calc, we now do for ImageTiles as well. note: the crasher part of T74225 was fixed in rB5c490d437743. Maniphest Tasks: T74225 Differential Revision: https://developer.blender.org/D6939
2020-02-26Cleanup: remove unused derived mesh functionalityCampbell Barton
2020-02-26Cleanup: reduce CDDM use, remove unused function callsCampbell Barton
2020-02-26Cleanup: format, unused varCampbell Barton
2020-02-25Fix T72721: Add visibility flags updates to the PBVHPablo Dobarro
Currently, there its a function that sets manually the fully_hidden flag of the nodes from the visibility operators in paint_hide.c. The undo code was not updating the flag, so the visibility state of the nodes was incorrect after preforming undo operations. This sometimes was drawing fully hidden nodes with empty buffers, causing artifacts in the geometry. I added a function to mark nodes which visibility state changed (similar as we are updating the mask flags and the nodes bounding boxes). This way, the tools, operators and undo code don't have to update the visibility flags, making everything much simpler to understand and maintain. I did not remove the flag update code from the current visibility operators in this patch, but after reimplementing them (and all the new ones) in the new visibility system, all visibility updates should be done using this method and the BKE_pbvh_node_fully_hidden_set function should be removed. Reviewed By: jbakker Maniphest Tasks: T72721 Differential Revision: https://developer.blender.org/D6767
2020-02-25Cleanup: Constraints, simplified ChildOf evaluation functionSybren A. Stüvel
This un-indents the `childof_evaluate()` function by one level, making it easier to add new functionality in an upcoming commit. No functional changes.
2020-02-25Cleanup: Reduced indentation in objectsolver_evaluate()Sybren A. Stüvel
This will make an upcoming change cleaner to implement. No functional changes.
2020-02-25UI: Add theme option for time markers lineMichael Soluyanov
This patch adds the ability to set colors and alpha of dashed line of Time Markers. That way themes can avoid contrast issues and communicate selection better. See screenshots in D6877. Bumps subversion. Reviewed By: William Reynish, Julian Eisel Differential Revision: https://developer.blender.org/D6877
2020-02-25Ocean modifier: fix changes to resolution complete changing the shapePhil Stopford
This takes the idea from the aaOcean library to link the RNG seed to the surface point, so that changing resolution only adds/remove surface detail. Differential Revision: https://developer.blender.org/D6871
2020-02-25Cleanup: remove cddm_from_bmeshCampbell Barton
Use BKE_mesh_from_bmesh_for_eval_nomain instead.
2020-02-21Fluid: Cleanup in cache delete functionSebastián Barschkis
Removed unneccessary calls to BLI_exists() as BLI_delete() does this implicitly.
2020-02-21Cleanup: Spelling in a commentSergey Sharybin
2020-02-20Cleanup: rename mul_m2v2 to mul_m2_v2Campbell Barton
Matches mul_m3_v3
2020-02-20Cleanup: unused enumsCampbell Barton
2020-02-20Cleanup: declatatuons for functions that don't existCampbell Barton
2020-02-19readfile: Move ID refcounting to libquery.Bastien Montagne
Having that extra ID users handling at readfile level, besides generic one ensured by libquery, has been something bothering me for a long time (had to fix my share of bugs due to mismatches between those two areas). Further more, work on undo speedup will require even more complex ID refcount management if we want to keep it in readfile.c area. So idea is instead to generalize what we did for linked data already when undoing: recompute properly usercount numbers after liblink step, for all IDs. Note that extra time required here is neglectable in a whole .blend file reading (few extra milliseconds when loading a full production scene e.g.). Notes: * Some deprecated data (IPOs) are not refcounted at all anymore, this should not be an issue in pratice since the are supposed to get deleted after doversion anyway. * Refcounting happens after `do_versions_after_linking`, i.e those functions won't get valid ID usercounts currently. Again, this is not a problem in current code, if needed we could recompute refcount before, and then ensure `do_versions_after_linoiing()` actually handles properly usercount, which it does not currently. Differential Revision: https://developer.blender.org/D6881
2020-02-19Fix T68878: Update shapekeys during transformationGermano Cavalcante
Only use the hack in `key_block_get_data` for the bmesh shapekey. The remaining shapekeys can use the original offset values. Differential Revision: https://developer.blender.org/D6516
2020-02-19Subdiv: Clarify Subdiv settingsSergey Sharybin
The actual naming might also be a subject to change, especially the one around `level`. Tricky part here is that at some point in the API there will be change from Blender modifier's Quality to OpenSubdiv's Level, but which API level is most suitable for this? At least now meaning of settings is better documented ans should be clear what's going on.
2020-02-18Sculpt: Update red cursor colorPablo Dobarro
Some users reported that the previous red color of the cursor was too saturated and that can be distracting. Reviewed By: brecht Differential Revision: https://developer.blender.org/D6828
2020-02-18Sculpt: Fix slide relax cursor colorPablo Dobarro
Slide/Relax is a deform tool, so the color should be yellow. Reviewed By: brecht Differential Revision: https://developer.blender.org/D6827
2020-02-18Cleanup: clang-format.Bastien Montagne
2020-02-18Cleanup: protect parameters of `FOREACH_MAIN_ID` & co macros.Bastien Montagne
2020-02-18Fix (unreported) wrong handling of usercount in `BKE_workspace_add()`.Bastien Montagne
This does not seem to be an actual issue in current master code (as creating a new ID will assign 1 user to it by default), but is breaking generic usercount handling in future changes.